0

我有一个使用 wsDualHttpBinding 的 wcf 简单程序。我将 server.exe 放在另一台计算机上(在我的 LAN 网络上)并通过客户端调用一个方法。回调在客户端成功调用。然后我将 server.exe 放在我的 VPS 服务器(在 Internet 上)并运行 client.exe,客户端抛出 TimeoutException。我使用 9090 端口进行服务器监听。我也关闭了双方的防火墙。

怎么了?请帮忙,这让我发疯了。

编辑: 服务器和客户端都需要有效的 IP 地址吗?

4

3 回答 3

0

尝试在 server.exe 中发布带有元数据端点的 http 元数据,并在浏览器中打开客户端计算机上的 Web 服务页面。

我还建议您甚至在 Internet 上使用 nettcpbinding 而不是 wsDualHttpBinding,因为它更稳定、更持久,并且 AFAIK wsDualHttpBinding 需要两个端口来进行正常的双工对话(请参阅客户端绑定中的 ClientBaseAddress)。Tcp 需要一个

于 2013-02-28T22:29:45.283 回答
0

问题已经解决了!

在双工连接中,客户端和服务器都需要有效的 IP 地址。我改变了连接方式。我使用了netTcp。

反正tnx大家。

于 2013-04-19T18:29:24.527 回答
0

检查客户的配置。尝试增加以下设置:

<binding name="WSDualHttpBindingEndpoint" 
openTimeout="00:01:00"
receiveTimeout="00:10:00"
sendTimeout="00:01:00"

验证服务操作是否被调用并及时返回。输入和退出方法时让服务写入日志。

还要验证端口 9090 未被阻塞。

于 2013-02-28T13:00:15.747 回答