Sql Server架构具有sql_variant
数据类型作为Table Type Parameter
列的一部分。另外还有一个非TVP参数为sql_variant
。对于TVP参数,我使用了以下链接中提供的选项:
https://stackoverflow.com/a/52736573/1559611
它使用了List<SqlDataRecord>
,可以将其添加到DynamicParameters
中,因为AsTableValuedParameter()
具有IEnumerable<SqlDataRecord>
的扩展方法。
在尝试上述选项之前,我曾尝试将object
和string
类型映射到TVP列的sql_variant
,但这会导致异常。
现在我想弄清楚:
SqlDataRecord
的选项,在这种情况下,简单的object
类型是否可以工作?object
类型吗?如果Dapper不支持,我唯一的选择就是切换回SqlClient,它确实对Sql_Variant数据类型提供了明确的支持,Dapper似乎没有这种情况,因为它使用DbType
,没有明确的Variant数据类型
在这些情况下有帮助或指针吗?