【发布时间】:2013-11-22 06:39:17
【问题描述】:
我开发了一个 WCF 自托管服务,它提供合同等等。这一直工作得很好,客户调用服务的方法,并收到他们的回复。太好了。
现在,我正在“玩弄”一个新应用程序的想法,我很好奇 WCF 在上述客户端服务器设置中如何进行双向通信,而不被客户端调用。
即服务联系客户,而不是客户联系服务。
我猜你会以某种方式保持客户端“连接”并跟踪它们。不久前,我使用原始 tcp 处理过这个场景,并滚动我自己的例程来执行此操作。我现在想使用 WCF 重新执行此操作。
一堆已连接的客户端 ->>> 服务器。
- 客户端可以访问服务器上的方法,获取它们的返回值。
- 服务器可以向客户端发出命令,而无需客户端请求。
我不想走点对点路由,因为我不需要客户端相互连接,并且我希望通过客户端的 NAT 限制。他们应该启动连接,然后“保持”连接,不时接收工作。
了解我对 WCF 的了解,以及我之前对它的实现,它是无状态的,并且客户端会执行所有“调用”。
我可以研究任何指针或链接吗?我能找到的所有“客户端/服务器”wcf 示例都只是一种普通的单向实现,就像我之前所做的那样。我错过了什么吗?
谢谢
【问题讨论】:
-
当我使用 WCF 进行双向连接时,我使用了 duplex services。如果它可以做你想做的事情,你可能想阅读。
-
嗨@Jermay,请添加您的评论作为答案。
标签: c# .net vb.net wcf client-server