提交DataContext更改时发生Linq ChangeConflictException

Ale*_*lex 10 concurrency linq-to-sql

System.Data.Linq.ChangeConflictException: 2 of X updates failed.
  at System.Data.Linq.ChangeProcessor.SubmitChanges(ConflictMode failureMode)
  at System.Data.Linq.DataContext.SubmitChanges(ConflictMode failureMode)
  at PROJECT.Controllers.HomeController.ClickProc(Int32 id, String code, String n)
Run Code Online (Sandbox Code Playgroud)

这是我经常得到的.这个动作每天进行数千次,每隔5秒我就会得到一次此异常.根据我的理解,当数据库中的某些内容在创建DataContext和更新之间发生变化时,就会发生这种情况.我对吗?

我该如何解决?

更新

我只是调试了错误,发现了以下内容:

Table name: dbo.Stats
current value: 9852039
original value: 9852038
database value: 9852039
Run Code Online (Sandbox Code Playgroud)

统计表不断更新.那么我怎样才能让LINQ保存更改.通过"经典"SQL Server访问,SqlDataCommand我从未遇到过类似的问题.

Raj*_*mal 10

这是由于乐观的并发性.您可以更改此行为,但在执行此操作之前了解它的作用.

https://blogs.msdn.microsoft.com/matt/2008/05/22/intro-to-linq-to-sql-optimistic-concurrency/