我在这个类似聊天的应用程序中使用双工WCF合同。 (显然不是真正的聊天,但为了考虑它的兴趣,你可以认为它足够相似)。
问题在于,许多谈论此合同的客户都在运行dhcp,而我真的无能为力。
使用dhcp处理双工通信的最佳方法是什么?我找到了一个设置<compositeDuplex clientBaseAddress="Uri"/>
,这意味着我可以在运行时更新这个值....看起来有点kludgy。
更新 我发现在我的WCF服务器日志中,部分问题是它将主机名放在响应地址中。我在这做错了什么?
感谢
答案 0 :(得分:1)
说实话,你做错的第一件事就是使用DualHttpBinding进行双工。整个绑定是一个巨大的kludge,并容易出现这样的问题(和防火墙,哦上帝防火墙)。
如果您使用net.tcp之类的东西,那么客户端建立与服务器的单一双向连接,而不需要两个连接,因此服务器不关心客户端是否已经在DHCP上。