如何转换字符串如"uniqueidentifier"
, "timestamp"
, "image"
, "money"
, "sql_variant"
等到各自的 .net 数据类型?
我需要查询一个表以找出它包含的字段,然后将这些字段累积到一个列表中 List<Column>
. Column
是我写的一个类。所以我需要这个机制。
最佳答案
使用 ExecuteReader 对目标列运行查询以获取 SqlDataReader,然后使用 GetFieldType(返回 .NET 数据类型)和 GetDataTypeName(返回相应的 SQL 服务器类型名称)。实际类型映射是在 SqlClient 内部完成的 - 您可以使用反射来访问它,并希望它不会在 .NET 版本之间发生变化,但我不推荐它。
关于C# - 将 "uniqueidentifier"、 "timestamp"、 "image"、 "money"、 "sql_variant"等字符串转换为 .net 数据类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1747305/