2012-06-08 39 views

回答

0

一个解决方案(可能不是最好的)是将你的调用SaveChanges()的代码放在try/catch块中。如果发生异常,请检查记录是否被删除,并将实体的状态设置为EntityState.Added并再次调用SaveChanges。

+0

如何检查记录是否被删除?我是否必须为上下文“交易”中的每条记录执行此操作? –

+0

我假设你正在尝试更新一条记录。也许处理这种情况的最好方法是将记录标记为已删除(使用软删除),并且在更新时总是将deleted标记为false。 –

+0

我曾考虑过这种替代方案,但它引发了更多的问题,我不得不改变所有的查询,并再增加一个Where子句,我期待着另一种解决方案。不管怎么说,还是要谢谢你 :) –