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); } }; }
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); } }; }