每當我需要在L2S工作中執行多個查詢時,我都會使用TransactionScope顯式創建一個事務。今天,我的同事告訴我,他從來沒有手動創建交易,因爲L2S在SubmitChanges級別執行。我在說,所以我已經做了一些示例代碼來測試它。正如我所瞭解的那樣 - 他是對的。 我的問題是,從linq到sql的開頭是否可用,或者是在某些.net版本/服務包中添加的? 在網絡中,有很多關於如何在L2S上使用TransactionScope的示例,所以我不確定這些人中的每一個人都可能會錯過它?linq to sql:我需要顯式創建一個事務嗎?
0
A
回答
0
顯式TransactionScopes確實有價值,如果你想包裝多個查詢和多個調用SaveChanges在一個單一的交易...但如果你正在保存一個對象圖(這將生成多個插入/更新語句到數據庫),當調用SaveChanges時,所有這些語句將自動包裝在一個事務中。
1
只要您進行所有更改,然後一次撥打SubmitChanges()
即可自動創建交易。
您需要擔心TransactionScope
的唯一時間是多次撥打SubmitChanges()
或者您需要一個可在多個上下文中工作的事務。
相關問題
- 1. 在顯式的LINQ-to-SQL(C#)中,順序很重要嗎?
- 2. 需要幫助建設的LINQ to SQL表達式
- 3. 創建表LINQ TO SQL
- 4. Linq to SQL創建表
- 5. 有人可以幫我創建一個LINQ to XML查詢嗎?
- 6. Linq to SQL比Linq to Entities更快嗎?
- 7. 需要幫助一個更漂亮的LINQ to SQL查詢
- 8. LINQ to SQL多個提交,我應該如何實現事務?
- 9. 隱含的LINQ to SQL事務
- 10. LINQ to SQL中的嵌套事務
- 11. 如何禁用LINQ to Sql事務?
- 12. 的LINQ to SQL事務錯誤
- 13. Linq to SQL Compact - 事務或只是SubmitChanges
- 14. 使用Linq-To-Sql執行存儲過程後需要SubmitChanges嗎?
- 15. 在LINQ to SQL中,通過外鍵添加時需要InsertOnSubmit()嗎?
- 16. Linq to sql - 在同一事務上執行多個查詢
- 17. 我需要一個服務對象嗎?
- 18. 我需要創建一個SQLite表
- 19. 在Int表達式中創建一個bool Linq to SQL表達式
- 20. asp.net-mvc/linq to sql - 我是否總是需要一個HTML.TextBox來執行Edit Save?
- 21. LINQ to SQL使用ActiveRecord模式嗎?
- 22. 我需要一個設計模式嗎?
- 23. 的LINQ to SQL查詢優化建議需要
- 24. Linq to Sql:我這樣做對嗎?
- 25. 我需要使用LINQ to XML查詢來確定值嗎?
- 26. 需要幫助形成的LINQ to SQL表達式
- 27. 我需要創建LINQ到實體SQL查詢
- 28. LINQ to SQL類和Datacontext不會創建
- 29. 的LINQ to SQL:防止重複創建
- 30. 創建LINQ to SQL來計算參數
自早期beta版以來,L2S已創建SubmitChanges事務。這就是當發生異常時能夠回滾操作的能力(參見'SubmitChanges(ConflictMode.ContinueOnConflict)') – 2011-12-27 21:26:30