首页 新闻 搜索 专区 学院

要命了! {"与基础事务管理器的通信失败。"}

0
悬赏园豆:160 [已解决问题] 解决于 2021-01-07 13:17

救命了。。。
只是单纯的一个Ajax请求 ,查询数据库, 也没用什么事务 , 为了单纯找问题我把其他请求都注释掉了 , 也就是说项目一启动只会发起者一个请求,只会有这一个地方查询数据库,
我百度了很多帖子也跟着这些前辈们做了很多配置,但是还是没有解决掉。。我束手无策了..

豆子都给大家了

AnonymousFlower的主页 AnonymousFlower | 初学一级 | 园豆:9
提问于:2021-01-07 09:32
< >
分享
最佳答案
0

我自己没有写事务 分布式事务自己更没有写,经过两天的研究,终于发现问题根源了 ,我发现我们公司用的abp框架每个单元默认是一个事务,在ajax发起一个请求请求a方法(a 就是一个单元),在a里面调用了b方法和c方法,b方法是连接的Server1的db,c方法连接的是Server2的db,之前在调试的时候b方法没有问题也就没有打断点,直接调试到c方法(就是上面截图的)的时候就conn.open()报错,这时b和c都在a方法的单元里面,是同一个事务于是就形成了分布式事务,环境配置太多太复杂,正好框架也可以关闭一个单元的事物就解决了

AnonymousFlower | 初学一级 |园豆:9 | 2021-01-07 11:22
其他回答(4)
0

用个ORM吧。。。还在自己写ado?

为乐而来 | 园豆:1331 (小虾三级) | 2021-01-07 09:41

ado有ado的好处,orm是方便快捷 但是ado效率更高 更灵活

支持(0) 反对(0) AnonymousFlower | 园豆:9 (初学一级) | 2021-01-07 10:10
0

控制面板=》Windows防火墙=》允许应用或功能通过Windows防火墙=》允许其他应用=》选择路径【C:\Windows\System32】下的mstdc.exe程序

收获园豆:55
不知道风往哪儿吹 | 园豆:1902 (小虾三级) | 2021-01-07 09:48

防火墙是直接关闭的呢

支持(0) 反对(0) AnonymousFlower | 园豆:9 (初学一级) | 2021-01-07 10:20
0
收获园豆:45
风行天下12 | 园豆:3857 (老鸟四级) | 2021-01-07 10:14

谢谢,这步操作我已经做过了 在服务器和本地都可以正常解析NetBIOS名称 DIC也是配置好了的

支持(0) 反对(0) AnonymousFlower | 园豆:9 (初学一级) | 2021-01-07 10:20

DTC

支持(0) 反对(0) AnonymousFlower | 园豆:9 (初学一级) | 2021-01-07 10:21
0

使用 TransactionScope 了吗?
如果想用事务还是 使用 SqlTransaction 事务吧,
TransactionScope 配置太多。

收获园豆:60
Tom.汤 | 园豆:2256 (老鸟四级) | 2021-01-07 11:04

谢谢回复, 我刚入职公司,改别人写的Bug, 我自己没有写事务 分布式事务自己更没有写,经过两天的研究,终于发现问题根源了 ,我发现我们公司用的abp框架每个单元默认是一个事务,在ajax发起一个请求请求a方法(a 就是一个单元),在a里面调用了b方法和c方法,b方法是连接的Server1的db,c方法连接的是Server2的db,之前在调试的时候b方法没有问题也就没有打断点,直接调试到c方法(就是上面截图的)的时候就conn.open()报错,这时b和c都在a方法的单元里面,是同一个事务于是就形成了分布式事务,环境配置太多太复杂,正好框架也可以关闭一个单元的事物就解决了。

支持(0) 反对(0) AnonymousFlower | 园豆:9 (初学一级) | 2021-01-07 11:21

@Flers: 这种分布式事务的做法比较恶心,如果换环境上线部署的话也比较烦, 希望以后一切安好

支持(0) 反对(0) Tom.汤 | 园豆:2256 (老鸟四级) | 2021-01-07 11:24
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册