如果给定一个包含 SQL Server/T-SQL 数据类型的字符串,将字符串评估为 .Net 类型的最简单方法是什么?
例如,如果您有一个包含“ nvarchar ”的字符串,则转换方法返回的结果应该是System.String
类型。如果我有一个包含“ int ”的字符串,结果应该是一个System.Int32
Type 对象。
我可以轻松地编写一个函数,该函数接受一个 SQL 数据类型字符串,并通过一个 switch/case 语句发送该字符串,该语句返回一个 .Net Type 对象。但是,我不确定 .Net 框架中是否有一个我忽略的功能已经做到了这一点。
将 SQL Server 数据类型解析为 .Net 数据类型的最简单/正确的方法是什么?
附加背景
就我而言,我实际上有一个存储过程,它返回一些关于数据的元信息。具体来说,返回一个字符串字段,其中包含一个 sql-type 值,该值可以是 SQL Server 2005 中可用的任何 sql-type。
我的存储过程有可能返回任何 sql 类型——、、、、等int
。smallint
我需要采用这种数据类型并将其转换为 .Net对象。 datetime
binary
Type
Matthew 在下面的评论确实提供了所有必要的映射信息,这些信息直接来自 Microsoft 的文档,但是,我再次想知道是否在System.Data
orSystem.Data.SqlClient
命名空间中集成了一些东西。