2010-10-28 55 views
1

我对LINQ查询一个错误,当我试图做的SubmitChanges()LINQ to SQL的错误继续

的问题是,什么都我尝试在我的项目,现在我得到 同样的错误做(我猜linq仍然会做错误更改)

我该如何清理挂钟更改或处理该问题否则呢?

Thanx!

+0

可能重复[?我怎么能拒绝一个LINQ to SQL的DataContext的所有更改( http://stackoverflow.com/questions/259219/how-can-i-reject-all-changes-in-a-linq-to-sqls-datacontext) – leppie 2010-10-28 10:25:52

回答

0

您需要将它们从'队列'中删除。

最简单的就是拨打电话GetChanges,并做所有相反的动作。例如,插入成为删除等。

Here是我写的扩展方法,适用于简单情况(可以根据需要进行修改)。

+0

我认为最好使用:db.GetChangeSet()。 Updates.Clear()用于更新,db.GetChangeSet()。Inserts.Clear()用于new或db.GetChangeSet()。Deletes.Clear()用于删除项目。 Thansks! – 2010-10-28 09:50:02

+0

嗯,这将工作,IFF它有一个工作清晰的方法....所有这些名单是只读的,所以它在实践中不起作用。 – leppie 2010-10-28 09:54:10

-2

用途:db.GetChangeSet().Updates.Clear()更新的,db.GetChangeSet().Inserts.Clear()新的或db.GetChangeSet().Deletes.Clear()删除项目

更多信息: Click

+0

我已经告诉过你,Clear不起作用。它会抛出一个异常。请尝试。 – leppie 2010-10-28 10:24:04

+0

该列表是只读的 – zsf222 2014-11-17 17:39:33