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();
    }

Ответы (0 шт):