public static void Commit(bool newTran) { if (newTran) { McTransaction tran = GetMcTransaction(); if (tran != null) { SqlConnection cnn = null; if (tran.SqlTransaction.Connection != null) { cnn = tran.SqlTransaction.Connection; } try { tran.SqlTransaction.Commit(); } catch { try { tran.SqlTransaction.Rollback(); } catch {} throw; } finally { if (cnn != null) { cnn.Close(); } } } SetTransaction(null); tran.RaiseAfterCommit(tran.SqlTransaction.GetHashCode()); } }