有誰知道是否可以使用Dapper 將表值參數數據傳遞到存儲過程?
Dapper是否支持SQL 2008表值參數?
慕碼人8056858
2019-12-25 15:43:21
TA貢獻1780條經驗 獲得超1個贊
現在(對Dapper 1.26或更高版本)直接支持烘焙到dapper中的表值參數。對于存儲過程,由于數據類型已內置在sproc API中,因此您所需要做的就是提供DataTable:
var data = connection.Query<SomeType>(..., new {
id=123, name="abc", values = someTable
}, ...);
對于直接命令文本,您還有兩個選擇:
使用輔助方法告訴它自定義數據類型:
var data = connection.Query<SomeType>(..., new {
id=123, name="abc", values = someTable.AsTableValuedParameter("mytype")
}, ...);
告訴數據表本身要使用哪種自定義數據類型:
someTable.SetTypeName("mytype");
var data = connection.Query<SomeType>(..., new {
id=123, name="abc", values = someTable
}, ...);
這些中的任何一個都可以正常工作。
舉報