我有一個User類和相關的UserRequest,所以VS設計器爲我創建了User.UserRequests。LINQ to SQL:除非調用SubmitChanges,否則DataContext更改不會被反映
偶爾我執行任務,以刪除非活動UserRequests如下:
Dim requests = From req In db.UserRequests Where req.LastActivity < DateTime.Now.Subtract(New TimeSpan(0, 0, KeepRequestInterval)) Select req
For Each req In requests
db.UserRequests.DeleteOnSubmit(req)
Next
當我訪問User.UserRequests,刪除請求仍然存在,除非我叫取出之後,db.SubmitChanges(),前訪問User.UserRequests。
有什麼辦法可以強制從User.UserRequests中刪除已刪除的請求,而無需額外調用SubmitChanges()?
我同意,真正改變數據庫的唯一方式是通過的SubmitChanges()。在此之前,如果SubmitChanges()從不調用,那麼這些事務處於隊列中,而這個隊列沒有制定。 – 2012-01-26 22:26:28
如何從集合中手動刪除它們?這是一個很好的做法嗎? – SharpAffair 2012-01-26 22:34:16
呃,你試圖達到什麼樣的基本目標 – Pleun 2012-01-27 09:25:05