如何最好地将字符串表示转换为DbType?
问题描述:
假设我有一个字符串“nvarchar(50)”,例如用于创建该类型表的T-SQL字符串段。我如何最好地将其转换为System.Data.DbType的枚举表示形式?如何最好地将字符串表示转换为DbType?
它可以处理写在T-SQL类型的许多不同的可能方式,如:
[nvarchar](50)
nvarchar 50
@Jorge表:是的,这很方便,但是是不是有一个预焙转换器?否则很好的答案。
答
我第一次尝试将涉及使用正则表达式来解析声明的两个部分(其中第二部分仅用于可变大小的类型。)请确保您的类型转换为名称,以降低当你解析它的情况。
您可以使用枚举中的所有不同类型(小写),然后使用Enum.Parse获取枚举值的实例,然后使用开关大小写以获取适当的System.Data .DbType为每个枚举值。
这种毛病我承认。