2010-02-01 20 views
0

ASP.NET linq SubmitChanges方法提交自上次調用以來所有先前數據庫修改的更改。如何使SubmitChanges僅提交特定更改而不是以前的所有更改?

我有,我像做以下的情況:

ClassX x = new Abc.Linq.ClassX(); 
DataContext.InsertOnSubmit(x); 

ClassY y = new Abc.Linq.ClassXY(); 
DataContext.InsertOnSubmit(y); 

DataContext.SubmitChanges();//x and y are committed to the database 

我想在該行插入年,但不是X的上方。 然後,我想在隨後的另一個調用SubmitChanges()的時候插入X. 我必須按所示順序執行代碼。

這可能嗎? 或者我應該調用SubmitChanges()以外的其他東西嗎?

回答

4

我會爲此使用單獨的DataContexts。 DataContext只是數據訪問的一個包裝器,還有一組待定的更改。它不支持其更改列表的部分提交。 InsertOnSubmit做它說的那樣 - 是否有一個原因,你需要調用之前,你真的想要它提交?也許如果你詳細說明了將你鎖定到這個執行順序的問題,我們可以提供一個更好的解決方案。

+0

對於單獨的DataContexts,給定此特定場景。 – keyboardP

相關問題