Solución:
Aquí el fragmento de código:
using System.Transactions;
....
using (var transactionScope = new TransactionScope())
{
DoYourDapperWork();
transactionScope.Complete();
}
Tenga en cuenta que debe agregar una referencia a System.Transactions
ensamblado porque no se hace referencia a él de forma predeterminada.
Preferí usar un enfoque más intuitivo obteniendo la transacción directamente desde la conexión:
// This called method will get a connection, and open it if it's not yet open.
using (var connection = GetOpenConnection())
using (var transaction = connection.BeginTransaction())
{
connection.Execute(
"INSERT INTO data(Foo, Bar) values (@Foo, @Bar);", listOf5000Items, transaction);
transaction.Commit();
}
Deberías poder usar TransactionScope
ya que Dapper ejecuta solo comandos ADO.NET.
using (var scope = new TransactionScope())
{
// open connection
// insert
// insert
scope.Complete();
}
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)