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

问题描述:

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

它可以处理写在T-SQL类型的许多不同的可能方式,如:

[nvarchar](50) 
nvarchar 50 

@Jorge表:是的,这很方便,但是是不是有一个预焙转换器?否则很好的答案。

希望这个映射表做这项工作。

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

我第一次尝试将涉及使用正则表达式来解析声明的两个部分(其中第二部分仅用于可变大小的类型。)请确保您的类型转换为名称,以降低当你解析它的情况。

您可以使用枚举中的所有不同类型(小写),然后使用Enum.Parse获取枚举值的实例,然后使用开关大小写以获取适当的System.Data .DbType为每个枚举值。

这种毛病我承认。