救命了。。。
只是单纯的一个Ajax请求 ,查询数据库, 也没用什么事务 , 为了单纯找问题我把其他请求都注释掉了 , 也就是说项目一启动只会发起者一个请求,只会有这一个地方查询数据库,
我百度了很多帖子也跟着这些前辈们做了很多配置,但是还是没有解决掉。。我束手无策了..
豆子都给大家了
标签:
救命了。。。
只是单纯的一个Ajax请求 ,查询数据库, 也没用什么事务 , 为了单纯找问题我把其他请求都注释掉了 , 也就是说项目一启动只会发起者一个请求,只会有这一个地方查询数据库,
我百度了很多帖子也跟着这些前辈们做了很多配置,但是还是没有解决掉。。我束手无策了..
豆子都给大家了
使用 TransactionScope 了吗?
如果想用事务还是 使用 SqlTransaction 事务吧,
TransactionScope 配置太多。
可以看下这篇 https://www.jianshu.com/p/5c5f34934754
我自己没有写事务 分布式事务自己更没有写,经过两天的研究,终于发现问题根源了 ,我发现我们公司用的abp框架每个单元默认是一个事务,在ajax发起一个请求请求a方法(a 就是一个单元),在a里面调用了b方法和c方法,b方法是连接的Server1的db,c方法连接的是Server2的db,之前在调试的时候b方法没有问题也就没有打断点,直接调试到c方法(就是上面截图的)的时候就conn.open()报错,这时b和c都在a方法的单元里面,是同一个事务于是就形成了分布式事务,环境配置太多太复杂,正好框架也可以关闭一个单元的事物就解决了
用个ORM吧。。。还在自己写ado?
控制面板=》Windows防火墙=》允许应用或功能通过Windows防火墙=》允许其他应用=》选择路径【C:\Windows\System32】下的mstdc.exe程序