我正在尝试连接数据库,如
var ConnectionString = System.Configuration.ConfigurationManager.ConnectionStrings["connStringName"].ConnectionString;
DbCommand dbCommand = db.GetStoredProcCommand("CorrectProcedureName");
using (IDataReader dataReader = db.ExecuteReader(dbCommand))
{
...
}
尝试使用消息抛出异常时:
由于通信问题,MSDTC事务管理器无法从源事务管理器中提取事务。可能的原因是:存在防火墙并且它没有MSDTC进程的例外,两台机器无法通过其NetBIOS名称找到对方,或者两个事务中没有启用对网络事务的支持经理。 (来自HRESULT的异常:0x8004D02B)"} System.Exception {System.Runtime.InteropServices.COMException}
我尝试过:
"两台机器找不到对方" - 我试图通过IPv6连接服务器:它可以工作(我的意思是:抛出相同的异常,而不是其他随机IP,这是完全无法访问的(这是正确的,因为没有这样的服务器)
"支持网络交易......" - 在两台计算机上启用,使用管理员检查
"防火墙存在" - 它没有,它完全被禁用
分布式事务处理协调器服务已启动
我的解决方案和任何示例之间的区别可能是我在同一程序中连接了另一个数据库(我需要一次2 dbs)。
你知道为什么在这种情况下会发生这种情况吗?