void IMigration <SQLiteConnection> .RunMigration(MigrationRunData <SQLiteConnection> data) { Connection = data.Connection; Logger = data.Logger; if (UseTransaction) { using (var transaction = Connection.BeginTransactionSafe()) { try { ApplyMigration(data.Direction); transaction.Commit(); } catch { transaction.Rollback(); throw; } } } else { ApplyMigration(data.Direction); } }
void IMigration <IDbConnection> .RunMigration(MigrationRunData <IDbConnection> data) { using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required, TimeSpan.FromMinutes(10))) { Connection = data.Connection; Logger = data.Logger; if (data.Direction == MigrationDirection.Up) { Up(); Down(); Up(); } else { Down(); } scope.Complete(); } }
void IMigration <SQLiteConnection> .RunMigration(MigrationRunData <SQLiteConnection> data) { this.Connection = data.Connection; this.Logger = data.Logger; if (this.UseTransaction) { try { this.Connection.BeginTransaction(); if (data.Direction == MigrationDirection.Up) { this.Up(); } else { this.Down(); } this.Connection.Commit(); } catch { this.Connection.Rollback(); throw; } } else { if (data.Direction == MigrationDirection.Up) { this.Up(); } else { this.Down(); } } }
public void RunMigration(MigrationRunData <IDbConnection> data) { throw new NotImplementedException(); }
public void RunMigration(MigrationRunData <MartenConnection> data) { Session = data.Connection.Session; Up().GetAwaiter().GetResult(); }