如何最好地将字符串表示形式转换为 DbType?

Posted

技术标签:

【中文标题】如何最好地将字符串表示形式转换为 DbType?【英文标题】:How do I best convert a string representation into a DbType? 【发布时间】:2010-09-10 14:32:20 【问题描述】:

假设我有一个字符串“nvarchar(50)”,例如用于创建该类型表的 T-SQL 字符串段。如何最好地将其转换为 System.Data.DbType 的枚举表示?

它能否处理在 T-SQL 中编写类型的多种不同可能方式,例如:

[nvarchar](50) 
nvarchar 50

@Jorge Table:是的,这很方便,但是没有预烘焙转换器吗?否则很好的答案。

【问题讨论】:

【参考方案1】:

希望这个映射表能完成这项工作。

http://www.carlprothman.net/Default.aspx?tabid=97

【讨论】:

【参考方案2】:

我的第一次尝试将涉及使用正则表达式来解析声明的两个部分(其中第二部分仅用于可变大小的类型。)确保在解析时将类型名称转换为小写它。

您可以创建一个包含所有各种类型的枚举(小写),然后使用 Enum.Parse 获取枚举值的实例,然后使用 switch-case 获取适当的 System.Data。每个枚举值的 DbType。

有点恶心,我承认。

【讨论】:

以上是关于如何最好地将字符串表示形式转换为 DbType?的主要内容,如果未能解决你的问题,请参考以下文章

如何将 Swift 数组转换为字符串?

如何将列表的字符串表示形式转换为列表?

如何将列表的字符串表示形式转换为列表?

如何最好地将 ClientRect / DomRect 转换为普通对象

如何最好地将 VARIANT_BOOL 转换为 C++ bool?

如何最好地将 SparkSQL Dataframe Array[String] 列转换为新的 [String] 列