每当我需要在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 XML查询吗?
- 4. Linq to SQL创建表
- 5. 需要帮助一个更漂亮的LINQ to SQL查询
- 6. LINQ to SQL多个提交,我应该如何实现事务?
- 7. 如何禁用LINQ to Sql事务?
- 8. LINQ to SQL中的嵌套事务
- 9. Linq to SQL Compact - 事务或只是SubmitChanges
- 10. 的LINQ to SQL事务错误
- 11. 使用Linq-To-Sql执行存储过程后需要SubmitChanges吗?
- 12. 在LINQ to SQL中,通过外键添加时需要InsertOnSubmit()吗?
- 13. Linq to sql - 在同一事务上执行多个查询
- 14. 我需要创建一个SQLite表
- 15. asp.net-mvc/linq to sql - 我是否总是需要一个HTML.TextBox来执行Edit Save?
- 16. 我需要一个设计模式吗?
- 17. LINQ to SQL使用ActiveRecord模式吗?
- 18. Linq to Sql:我这样做对吗?
- 19. 需要帮助形成的LINQ to SQL表达式
- 20. 创建LINQ to SQL的可重用块
- 21. 使用LINQ to SQL创建数据库
- 22. LINQ to SQL类和Datacontext不会创建
- 23. 创建LINQ to SQL来计算参数
- 24. 的LINQ to SQL:防止重复创建
- 25. 在Linq-to-SQL类中创建实体
- 26. Linq to Sql:加入,为什么我需要加载集合
- 27. 我需要确认此有关的LINQ to SQL /实体
- 28. 我需要一个UINavigationController吗?
- 29. 我真的需要为TestFlight创建一个AdHoc Distribution Build吗?
- 30. 重新创建一个COM DLL,我需要担心GUID吗?
自早期beta版以来,L2S已创建SubmitChanges事务。这就是当发生异常时能够回滚操作的能力(参见'SubmitChanges(ConflictMode.ContinueOnConflict)') – 2011-12-27 21:26:30