看来我遇到了Microsoft分布式事务处理协调器(MSDTC)相关问题。这是MSDTC配置问题吗?
情景
我使用的TransactionScope,并在单独的范围击中不同服务器上的两个不同的数据库(例如,DB_A运行Windows Server 2003和DB_B运行Windows Server 2008)。一个数据库使用Entity Framework 4.0访问,另一个使用普通的ADO.NET API访问。
当我从我的开发机器(运行WinXP)运行应用程序时,它会提交并准确回滚这两个连接。但是,当我运行该应用程序并部署到另一台服务器上时(例如运行Windows Server 2003的WAS_A),它会正确提交,但在发生异常情况时不会回滚两台服务器上的数据库活动。
我认为这将是WAS_A上的MSDTC配置问题。所以我去了MSDTC - >安全配置,并检查了所有可用的选项(正如我以前在其他机器上所做的那样)。但我仍面临同样的问题。
寻找专家意见。 :)