WCF回调与多个客户端的处理

4

我可以有两个不同的客户端同时监听同一个WCF回调,并且在不必重复处理的情况下都接收到相同的数据吗?

2个回答

6
并不完全如此,至少不是直接的。你所描述的听起来很像发布/订阅模式。WCF服务基本上只为一个客户端提供服务,每次只能有一个客户端。

在WCF 3.5中有一些方法,而在WCF 4.0中有更好的方法 - 无论是否使用Windows Azure的.NET服务,都可以实现。还有其他工具和支持发布/订阅模式的方法。

请查看以下内容:

如果你在Google或Bing上搜索"WCF发布订阅",你会得到更多的结果 - 但我想这三个应该可以让你入门。


如果每个客户端都发出请求,要求通知同一事件,那么当事件发生时,操作员基本上希望做的就是 .NET 在触发事件时所做的事情:使用事件通知回调每个客户端。 - John Saunders

2
除了@marc_s发布的链接外,您还可以查看Juval Lowy的发布/订阅框架,如下图所示。 Publish-Subscribe Framework
(来源:microsoft.com)
该框架在此MSDN文章中有详细描述。您可以在Lowy的网站IDesign.net免费下载框架源代码。
使用发布/订阅服务使发布者可以将事件一次发布到一个众所周知的端点。然后,发布/订阅服务会负责将通知发布给已订阅的客户端。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接