Example #1
0
        protected override void BeginUow()
        {
            _dbContextAddedEvent += context =>
            {
                if (Option.IsolationLevel == null)
                {
                    Option.IsolationLevel = IsolationLevel.ReadCommitted;
                }

                if (Option.IsolationLevel != null)
                {
                    var trans = context.Database.BeginTransaction(); //为实现事务级别设置
                    Transactions.Add(context.GetType().Name, trans);
                }
            };
        }
Example #2
0
        public virtual void BeginTransaction(IUnitOfWorkOptions unitOfWorkOptions)
        {
            _dbContextAddedEvent += context =>
            {
                if (unitOfWorkOptions.IsolationLevel == null)
                {
                    unitOfWorkOptions.IsolationLevel = System.Data.IsolationLevel.ReadCommitted;
                }

                UnitOfWorkOptions = unitOfWorkOptions;
                if (UnitOfWorkOptions.IsolationLevel != null)
                {
                    var tran = context.Database.BeginTransaction(UnitOfWorkOptions.IsolationLevel.Value);
                    Transactions.Add(context.Name, tran);
                }
            };
        }