这里发生了非常奇怪的事情。
我在调试一些旧代码时,添加了一个事务范围,以确保我所做的更改不会被提交。
这个方法起初运行正常两次,然后出现了以下错误:
"The transaction manager has disabled its support for remote/network transactions."
不需要任何代码更改或重建就可以在工作/不工作之间切换(字面上是连续3次按F5 [Web应用程序])。这是本地代码连接到远程DB服务器。
自此以后,完全分离的不同项目中的代码会超时。如果我从此代码中删除transactionScopes,它就可以正常运行,但是如果将其放置在其中,它就会超时。我尝试过我的本地SQL服务器和远程服务器,两者都在transactionScope内超时。
到底出了什么问题?
编辑:我发现将TransactionScopes从以下内容更改为:
using (var scope = new TransactionScope(TransactionScopeOption.RequiresNew))
to
using (var scope = new TransactionScope())
防止问题的发生 :s
这是什么意思?