我们如何处理LINQ to SQL中的并发错误?
答案 0 :(得分:1)
一种方法是在每列上设置模式,使其参与冲突检查。有三个选项:Always, Never & WhenChanged
另外一个选项是使用ConflictMode
参数SubmitChanges
(ConflictMode.ContinueOnConflict or ConflictMode.FailOnFirstConflict
之一。如果将其设置为前者,则提交将在完成时抛出,但您将拥有收集失败的提交内容以供进一步处理...有关详细信息,请参阅this answer。
答案 1 :(得分:1)
要处理并发冲突,应该使用updataion LINQ中的try和catch块来捕获“ChangeConflictException”。一旦得到异常,就可以通过changeConflicts集合循环来解决问题(KeepCurrentValues,OverwriteCurrentValues和KeepChanges)。如果我们检查现场级别的可靠性检查,那会更好。