1次x更新失败,未找到或未更改行

时间:2013-09-18 14:45:16

标签: c# .net sql-server linq-to-sql

我在使用linq on submitchanges的程序中遇到一个不一致的错误,上面写着“1次x更新失败”。我已经对此做了一些研究,我发现的大部分内容都表明这是由于数据在内存中时开放数据上下文使用的数据从其他地方改变而引起的。这在我的情况下是有道理的,因为数据上下文已经打开了一段时间,并且该表正被其他程序使用。

我做了一个测试但是尝试通过在数据上下文打开时显式更改行然后尝试提交更改来复制它。我在这种情况下得到的例外不是“1次更新失败”,而是“未找到或更改行”。我很好奇是否有人可以告诉我两者之间有什么区别以及如何复制“1次更新失败”错误?

1 个答案:

答案 0 :(得分:1)

所以我做了一些更多的测试,似乎在数据上下文中只有一行等待更新或当第一个要更新的行时,抛出“未找到或未更改行”异常。在循环并更新多个行的情况下,然后调用submitchanges,抛出“1个x更新失败”异常而不是......假设它不是第一个失败的更新。希望这是有道理的。