C# Dapper Transaction
Мне необходимо создать общий абстрактный тип по манипулированию транзакциями и подключением с использованием Dapper. С подключением я разобралась, а вот как быть с транзакцией не могу понять
public abstract class DbDataAccess<T>: IDisposable
{
protected readonly DbProviderFactory factory;
protected readonly DbConnection connection;
protected readonly DbTransaction transaction;
public DbDataAccess()
{
factory = DbProviderFactories.GetFactory("DataProvider");
connection = factory.CreateConnection();
connection.ConnectionString = ConfigurationService.Configuration["dataAccessConnectionString"];
//transaction = connection.BeginTransaction();
}
public void Dispose()
{
//transaction.Commit();
connection.Close();
}
public abstract ICollection<T> Select();
public abstract void Insert(T entity);
public abstract void Update(T entity);
public abstract void Delete(Guid index);
Подключение все работает как надо, как можно создать общую транзакции? Которая как и подключение автоматически создается и автоматически закрывается? Чтобы при выполнение команд не приходилось постоянно их прописывать вручную
public class PlayerDataAccess : DbDataAccess<Player>
{
public override ICollection<Player> Select()
{
var sql = "select * from Players";
return connection.Query<Player>(sql).ToList();
}