【问题标题】:MSDTC Transaction Issue in WCFWCF 中的 MSDTC 事务问题
【发布时间】:2014-10-31 06:24:40
【问题描述】:

我正在开发 WCF 客户端服务器应用程序,将两者保存在不同的机器上。 当我们在不同的机器上运行 cient 和 server 时,我对 TransactionScope 的 DTC 问题有所了解,所以我通过执行以下操作为不同的客户端和服务器解决了它。

  1. 为 DTC 设置安全设置,包括客户端中的出站设置和服务器上的入站设置。
  2. 完全关闭防火墙(暂时确保我这边的安全)

除一台机器外,所有客户端和服务器都正常工作。

我已经检查过了,

1.安全设置 2.防火墙=>关闭 3.相同的指导问题 4.重启DTC 5.PingDTC(我已经尝试过并且不想再次使用因为根本不是用户友好的工具)

我从谷歌找到的所有可能性,但这台机器只有错误。 在这两种情况下,如果我将其设为客户端或服务器,它就无法与另一台机器通信,其余一切都可以。

谁能给我建议合适的解决方案?

【问题讨论】:

    标签: c# wcf transactionscope msdtc


    【解决方案1】:

    MSDTC 故障排除非常痛苦。

    问题机器是否与所有其他机器使用相同的操作系统?我发现 XP、Vista、8 和 Server 2012 如果不在以下位置输入注册表项就无法工作:

    HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\RPC\ { RestrictRemoteClients, DWORD, 0 }
    

    您可能需要创建 RPC 密钥,默认情况下通常不存在。

    一般来说,尽管 DTCPing 是一个使用起来相当笨拙的工具,但每当我有一些深不可测的原因导致 MSDTC 无法正常工作时,它对我来说都是无价之宝。如果上述方法不起作用,您可以发布您从 DTCPing 获得的错误消息吗?

    【讨论】:

    • 是的,操作系统是相同的,它的 Win 7。即使我也测试过这个,没有其他客户端有这个文件夹,因为它们都还在工作。即使将此密钥放入这台故障机器的注册表中也不起作用。还有其他想法吗?
    • 通常我会使用 DTCPing 和 blogs.msdn.com/b/distributedservices/archive/2008/11/12/… 来确定实际问题是什么,过去它总是为我整理东西。抱歉,我无法提供更多帮助。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-12-09
    • 1970-01-01
    • 2010-12-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多