WCF中的MSDTC交易问题

时间:2014-10-31 06:24:41

标签: c# wcf transactionscope msdtc

我正在使用WCF客户端服务器应用程序,将它们保存在不同的计算机上。 当我们在不同的机器上运行cient和server时,由于TransactionScope,我对DTC问题有点了解,所以我通过跟进解决了不同的客户端和服务器。

  1. 设置DTC的安全设置,包括客户端和服务器入站的出站设置。
  2. 保持防火墙完全关闭(为了让我的身边现在安全)
  3. 除一台计算机外,所有客户端和服务器都正常工作。

    我查了一下,

    1.安全设置 2.Firewall =>离 3.Same Guid问题 4.重新启动DTC 5.PingDTC(我已经尝试过并且想要再次使用,因为它不是用户友好的工具)

    我从谷歌找到的每一种可能性,但这台机器只有错误。 在这种情况下,如果我将它设为客户端或服务器,它就无法与其他计算机通信,并且所有人都可以互相休息。

    有人可以建议我适当的解决方案吗?

1 个答案:

答案 0 :(得分:0)

MSDTC故障排除非常痛苦。

问题机器是否与所有其他机器的操作系统相同?我发现XP,Vista,8和Server 2012在没有放入注册表项的情况下无法正常工作:

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

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

一般来说,尽管DTCPing是一个非常难以使用的工具,但每次我有一些不可思议的理由为MSDTC工作时,它已经证明对我来说非常宝贵。如果上述方法无效,您是否可以发布从DTCPing获得的错误消息?