Sql Server Schema, с которой я работаю, имеет sql_variant
DataType как часть Table Type Parameter
столбца.Также есть параметр не TVP, который sql_variant
.Для параметра TVP я использовал опцию, предоставленную по следующей ссылке:
https://stackoverflow.com/a/52736573/1559611
Он использовал List<SqlDataRecord>
, который можно добавить к DynamicParameters
, так как *У 1011 * есть метод расширения для IEnumerable<SqlDataRecord>
.
Перед тем, как использовать вышеуказанный вариант, я попытался сопоставить тип object
и string
с sql_variant
для столбца TVP, но это приводит к исключению.
Теперь я пытаюсь выяснить:
- Как сопоставить параметр не TVP для Dapper, поскольку я не вижу опции, аналогичной
SqlDataRecord
, будетработа простого типа object
в этом случае? - Когда возвращаемая коллекция содержит столбец, который имеет вариантный тип, будет ли он соответствовать типу
object
?
Мой единственный вариантесли Dapper не поддерживает, это переключиться обратно на SqlClient, который явно поддерживает тип данных Sql_Variant, что, похоже, не относится к Dapper, поскольку он использует DbType
, который не имеет явного типа данных Variant
Любая помощь или указатель на эти случаи?