public void OnRollbackAll() { if (_sub != null) { _sub.OnRollbackAll(); _sub = null; } _status = SqlTransactionStatus.Rollbacked; }
internal void OnCommitAbove() { if (_sub != null) { _sub.OnCommitAbove(); _sub = null; } _status = SqlTransactionStatus.Committed; }
public void Commit() { if (_status != SqlTransactionStatus.Opened) { throw new InvalidOperationException(); } _sub?.OnCommitAbove(); _status = SqlTransactionStatus.Committed; _sqlTransaction.Commit(); _sqlTransaction.Dispose(); _c.OnMainClosed(); }
public void RollbackAll() { if (_status != SqlTransactionStatus.Opened) { throw new InvalidOperationException(); } if (_sub != null) { _sub.OnRollbackAll(); _sub = null; } _status = SqlTransactionStatus.Rollbacked; _sqlTransaction.Rollback(); _sqlTransaction.Dispose(); _c.OnMainClosed(); }
public void Commit() { if (_status != SqlTransactionStatus.Opened) { throw new InvalidOperationException(); } if (!RestoreSuperIsolationLevel()) { RollbackAll(); } else { if (_sub != null) { _sub.OnCommitAbove(); _sub = null; } _status = SqlTransactionStatus.Committed; RestoreSuperIsolationLevel(); _super.OnSubClose(_super, 1); } }