Historisch gezien waren tabelwaarde-parameters geen grote focus in dapper; vooral omdat ze alleen werken op SqlConnection
(dapper probeert willekeurige providers te targeten, inclusief "versierde" ADO.NET-providers - d.w.z. waar een SqlConnection
zit verstopt onder een wikkel). Wat je zou do is implementeren IDynamicParameters
handmatig (of leen gewoon de bestaande DynamicParameters
class) om deze functionaliteit toe te voegen:
void SqlMapper.IDynamicParameters.AddParameters(System.Data.IDbCommand command,
SqlMapper.Identity identity)
{
...
// and then whatever the code is...
((SqlCommand)command).Parameters
.AddWithValue(...,...).SqlDbType = System.Data.SqlDbType.Structured;
...
}
Ik zal me ook inspannen om de concrete DynamicParameters
klasse hier meer polymorf, zodat je in een toekomstige build gewoon kunt override
een enkele methode, detecteer een TVP-achtig type en voeg de parameter handmatig toe.