在上一个实例中是将所有的代码都放在了ts的范围内去执行,现在把三个操作分别定义自己的数据库连接封装在三个不同的方法中,然后将这三个方法放在ts范围内去执行。经过测试出现了一个错误“msdtc不可用”。网上查看了一下,原来需要把这个服务打开。于是本人查看了一下计算机服务,的确没有打开,打开后程序运行正常。但是之后问题出来了,为什么在上一个实例的时候没有报错呢?先来说说这个服务,百度上是这样描述的:
描述: msdtc.exe是微软分布式传输协调程序。该进程调用系统Microsoft Personal Web Server和Microsoft SQL Server。该服务用于管理多个服务器。
msdtc.exe是一个并列事务,是分布于两个以上的数据库,消息队列,文件系统或其他事务保护资源管理器,删除要小心。
通过上面的描述,本人觉得可能是将方法进行封装的时候各自都定义了自己不同的数据库连接,导致需要系统使用msdtc