Sal*_*mer 10 sql-server asp.net msdtc transactions transactionscope
从我正在阅读的内容来看,为了在.NET中使用TransactionScope,您需要在Windows中运行分布式事务处理协调器服务.我关闭了该服务,我的应用程序似乎运行相同,回滚交易没问题.
我错过了什么吗?它是如何工作的?我正在运行Windows 7并在VisualStudio 2010上运行webapp.
小智 11
更现代版本的Windows在内核中有一个迷你DTC版本.它不是分布式的,而是使用相同的API - 但它只能处理每个事务范围的一个资源.
TransactionScope在开始时使用它,然后在添加第二个资源时将事务"提升"到真正的DTC(在您的情况下资源是数据库连接).因此,只要您的用例很简单,就可以避免DTC的DISTRIBUTED部分的(高)开销,并且可以在没有运行服务的情况下工作.
有关内核事务管理器的更多信息,请访问http://en.wikipedia.org/wiki/Kernel_Transaction_Manager
MS也加入了它,因为NTFS得到了交易,它需要确保DTC是可用的.
http://www.codeguru.com/cpp/article.php/c18309/
只有当您有多个具有不同连接的事务时,MSDTC才会进入游戏
那么答案是:
这取决于!
归档时间: |
|
查看次数: |
4418 次 |
最近记录: |