public WeatherForecastController( ILogger <WeatherForecastController> logger, IConfiguration configuration, IRedbox redbox, IRedisClientsManagerAsync redisClientsManager) { _logger = logger; _connString = configuration.GetConnectionString("DefaultConnection"); _redbox = redbox; _redisMng = redisClientsManager; }
public static IDbTransaction BeginTransaction(this IDbConnection dbConnection, IRedbox redbox, bool autoCommit = false) { if (dbConnection.State == ConnectionState.Closed) { dbConnection.Open(); } var dbTx = dbConnection.BeginTransaction(); var tx = redbox.ServiceProvider.GetService <IRedboxTransaction>(); tx.DbTransaction = dbTx; tx.AutoCommit = autoCommit; redbox.Transaction.Value = tx; return(dbTx); }