实体框架中的Transaction.commit投掷论据null异常

时间:2019-01-15 14:52:50

标签: c# .net sql-server entity-framework entity-framework-6

var context = UnitOfWork._context;
 configurationContext.Database.CommandTimeout = 1200;
 using (var transaction = context .Database.BeginTransaction(System.Data.IsolationLevel.Serializable)){

select some data based on inner join

if data is already there update 

else insert

context.SaveChanges();
transaction.Commit();

这适用于单个环境中的单个用户。 但是,如果一个用户同时进行交易,则会抛出异常

System.Data.Entity.Core.EntityException: 'The underlying provider failed on Commit.'

Inner exception 
ArgumentNullException: Value cannot be null.
Parameter name: connection

Anyidea为什么会出现这种现象?

如果我将System.Data.IsolationLevel.Serializable替换为空,则可以正常工作,但是我想将其设置为可序列化,以便没有并发事务可以输入相同的行。

0 个答案:

没有答案