TransactionScope:它变得更好了吗?

Bri*_*Kay 5 .net asp.net transactions transactionscope

当TransactionScope第一次出现时,我遇到了一些严重的问题,让它在我的开发机器(XP)和我们的数据库服务器(Windows Server 2003)之间工作.

当我更多地研究它时,这似乎是一个棘手而广泛的问题,有可能成为生产中的头疼,所以我决定不以这种方式处理事务(即使我喜欢语法很多而且我真的想要它上班).

这些问题是否仍然存在或者使用安全吗?你现在经常使用它没有问题吗?

非常感谢!

注意:现在已经很久了,但我认为这个问题与Distribute Transaction Coordinator有关.我摆弄了很长一段时间,但从来没能让它发挥作用.

Jos*_*h E 8

里克施特拉尔有一个伟大的职位有关事务范围和LINQ to SQL 这里.它的上下文更多是LINQ to SQL,但我认为有一些适用的原则可以帮助您解决问题.

编辑:更具体地回答你的问题,这是Strahl对TransactionScope的评价:

传统上,TransactionScope是分布式事务处理协调器(DTC)的.NET包装器,但它的功能有所扩展.一个问题是DTC在资源使用方面相当昂贵,并且它要求DTC服务实际上在机器上运行(另一种服务在客户端安装上尤其麻烦).

但是,最近对TransactionScope和SQL Server客户端驱动程序的更新使得可以使用TransactionScope类及其提供的易用性,而不需要DTC,只要您针对单个数据库运行并且具有单个一致的连接字符串