Example #1
0
        public void Commit()
        {
            if (DbTransaction == null)
            {
                return;
            }
            DbTransaction.Commit();
            DbTransaction = null;
            Flags        &= ~DbConnectionFlags.CommitOnSave;
            var now = Session.Context.App.TimeService.ElapsedMilliseconds;
            //Log Commit trans
            var time = now - _transactionStart;

            this.Session.LogMessage("COMMIT TRANS, time: {0} ms", time);
        }
Example #2
0
 public void Abort()
 {
     try {
         if (DbConnection != null && DbConnection.State == ConnectionState.Open && DbTransaction != null)
         {
             DbTransaction.Rollback();
         }
         this.Session.LogMessage("--ROLLBACK TRANS");
     } catch (Exception ex) {
         this.Session.LogMessage("!!!! ROLLBACK TRANS failed: " + ex.Message);
     } finally {
         DbTransaction = null;
         Flags        &= ~DbConnectionFlags.CommitOnSave;
     }
 }
Example #3
0
 public void BeginTransaction(bool commitOnSave, IsolationLevel isolationLevel = IsolationLevel.Unspecified)
 {
     if (DbConnection.State != ConnectionState.Open)
     {
         Open();
     }
     DbTransaction = isolationLevel == IsolationLevel.Unspecified ?
                     DbConnection.BeginTransaction() : DbConnection.BeginTransaction(isolationLevel);
     _transactionStart = Session.Context.App.TimeService.ElapsedMilliseconds;
     //Log begin trans
     if (commitOnSave)
     {
         Flags |= DbConnectionFlags.CommitOnSave;
     }
     this.Session.LogMessage("BEGIN TRANS, Isolation level: {0}", isolationLevel);
 }
Example #4
0
 public static bool IsSet(this DbConnectionFlags flags, DbConnectionFlags flag)
 {
     return((flags & flag) != 0);
 }