Dapper.net transaction problem
Microsoft recommends to use TransactionScope over database IDbTransaction when possible. The following code should work, assuming that nothing's wrong with your SQL and the managed provider automatically enlists in the ambient transaction - something that well-behaved providers need to do.
using (var ts = new TransactionScope())
{
using (_cn)
{
_cn.Open();
...
}
ts.complete();
}
I have found the problem - I was simply missing the transaction param when I was calling the updates, whereas with the previous inserts that were working fine, I had included the IDbTransaction
param! My bad!
Example:
Connection.Query<Entitiy>("sqlQuery",param: new { id= ID}, transaction: Transaction)