我們在數據庫中有一個表格,代表我們網頁中的一堆div。每個div的像素寬度,高度,頂部和左側都保存爲表格中的單個記錄。它有一個主鍵。我們將表中的所有div加載到網頁中,用戶重新排列squres,然後在單個事務中使用Linq「OnSubmit」方法將更改後的方格保存回表中。如何使用Linq事務刪除並插入具有相同主鍵的記錄
我們的問題是我們刪除所有的方塊,然後重新插入所有的方塊。沒有交易,這工作正常。對於事務,它標記了所有要刪除的記錄,然後插入實際更新已標記爲要刪除的記錄。最後,一些廣場丟失了。
我們做DeleteOnSubmit(),然後InsertOnSubmit(),然後最終.SubmitChanges()。
我們在哪裏犯我們的錯誤?如何處理刪除並重新插入所有相同的事務?很明顯,我們可以在刪除後提交ModifyChanges(),但這不會將它放在同一個事務中。
任何想法?任何模式?你需要實際的源代碼來繼續嗎?
爲什麼你不只是更新數據?刪除/插入似乎是浪費時間。另外,主鍵是自動生成還是手動創建它們? – tvanfosson 2009-12-03 16:24:08
鍵不會自動生成。網頁返回什麼正方形將被保存。我想我們可以刪除使用RAM中的記錄返回的內容的補充。正方形也被多個用戶操縱,但正方形有顏色,我們一次只能改變一種顏色。 – 2009-12-03 16:33:27
這看起來很有趣http://msdn.microsoft.com/en-us/library/bb386982.aspx – 2009-12-03 16:45:50