Beispiel #1
0
        internal void BeginTransaction(CSIsolationLevel isolationLevel)
        {
            _transactionDepth++;

            if (SupportsNestedTransactions)
            {
                if (CSConfig.UseTransactionScope)
                {
#if !PCL
                    _currentTransactionScope = new TransactionScope();

                    _transactionScopeStack.Push(_currentTransactionScope);
#endif
                }
                else
                {
                    _currentTransaction = Connection.BeginTransaction(isolationLevel);

                    _transactionStack.Push(_currentTransaction);
                }

                _newTransactionStack.Push(true);
            }
            else
            {
#if !PCL
                if (CSConfig.UseTransactionScope)
                {
                    if (_currentTransactionScope != null)
                    {
                        _newTransactionStack.Push(false);
                    }
                    else
                    {
                        _currentTransactionScope = new TransactionScope();

                        _newTransactionStack.Push(true);
                    }

                    _transactionScopeStack.Push(_currentTransactionScope);
                }
                else
#endif
                {
                    if (_currentTransaction != null)
                    {
                        _newTransactionStack.Push(false);
                    }
                    else
                    {
                        _currentTransaction = Connection.BeginTransaction();

                        _newTransactionStack.Push(true);
                    }

                    _transactionStack.Push(_currentTransaction);
                }
            }
        }
 public ICSDbTransaction BeginTransaction(CSIsolationLevel isolationLevel)
 {
     return(new CSSqliteTransaction((SqliteTransaction)Connection.BeginTransaction()));
 }
 public ICSDbTransaction BeginTransaction(CSIsolationLevel isolationLevel)
 {
     return new CSSqliteTransaction((SqliteTransaction) Connection.BeginTransaction());
 }
        internal void BeginTransaction(CSIsolationLevel isolationLevel)
        {
            _transactionDepth++;

            if (SupportsNestedTransactions)
            {
                if (CSConfig.UseTransactionScope)
                {
#if !PCL
                    _currentTransactionScope = new TransactionScope();

                    _transactionScopeStack.Push(_currentTransactionScope);
#endif                    
                }
                else
                {
                    _currentTransaction = Connection.BeginTransaction(isolationLevel);

                    _transactionStack.Push(_currentTransaction);
                }

                _newTransactionStack.Push(true);
            }
            else
            {
#if !PCL
                if (CSConfig.UseTransactionScope)
                {
                    if (_currentTransactionScope != null)
                    {
                        _newTransactionStack.Push(false);
                    }
                    else
                    {
                        _currentTransactionScope = new TransactionScope();

                        _newTransactionStack.Push(true);
                    }

                    _transactionScopeStack.Push(_currentTransactionScope);
                }
                else
#endif                
                {
                    if (_currentTransaction != null)
                    {
                        _newTransactionStack.Push(false);
                    }
                    else
                    {
                        _currentTransaction = Connection.BeginTransaction();

                        _newTransactionStack.Push(true);
                    }

                    _transactionStack.Push(_currentTransaction);
                }
            }
        }
 public ICSDbTransaction BeginTransaction(CSIsolationLevel isolationLevel)
 {
     return new CSSqlTransaction(Connection.BeginTransaction(isolationLevel.Native()));
 }
Beispiel #6
0
 public ICSDbTransaction BeginTransaction(CSIsolationLevel isolationLevel)
 {
     return(new CSAccessTransaction(Connection.BeginTransaction(isolationLevel.Native())));
 }
Beispiel #7
0
        internal CSTransaction(CSSchema schema, CSIsolationLevel isolationLevel)
        {
            _database = schema.DB;

            _database.BeginTransaction(isolationLevel);
        }
Beispiel #8
0
        internal CSTransaction(CSDataProvider dataProvider, CSIsolationLevel isolationLevel)
        {
            _database = dataProvider;

            _database.BeginTransaction(isolationLevel);
        }
Beispiel #9
0
        public CSTransaction(CSIsolationLevel isolationLevel, string contextName)
        {
            _database = CSConfig.GetDB(contextName);

            _database.BeginTransaction(isolationLevel);
        }
Beispiel #10
0
        public CSTransaction(CSIsolationLevel isolationLevel)
        {
            _database = CSConfig.GetDB(CSConfig.DEFAULT_CONTEXTNAME);

            _database.BeginTransaction(isolationLevel);
        }
Beispiel #11
0
		internal CSTransaction(CSSchema schema, CSIsolationLevel isolationLevel)
		{
			_database = schema.DB;

			_database.BeginTransaction(isolationLevel);
		}
Beispiel #12
0
        internal CSTransaction(CSDataProvider dataProvider, CSIsolationLevel isolationLevel)
        {
            _database = dataProvider;

            _database.BeginTransaction(isolationLevel);
        }
Beispiel #13
0
        public CSTransaction(CSIsolationLevel isolationLevel, string contextName)
        {
            _database = CSConfig.GetDB(contextName);

            _database.BeginTransaction(isolationLevel);
        }
Beispiel #14
0
		public CSTransaction(CSIsolationLevel isolationLevel)
		{
			_database = CSConfig.GetDB(CSConfig.DEFAULT_CONTEXTNAME);

			_database.BeginTransaction(isolationLevel);
		}
 public static IsolationLevel Native(this CSIsolationLevel isolationLevel)
 {
     return((IsolationLevel)(int)isolationLevel);
 }