1

我是 WCF 和 Windows 服务的新手开发人员。我知道c#。该方案需要在 Windows 7 上运行的各种自定义应用程序来调用另一个应用程序中的方法。这是一种客户端/服务器关系,都在同一台计算机上运行。当指定条件发生时,服务器必须能够通知每个客户端(一次一个)。

我只需要开发服务器代码。

以下是可接受的解决方案:

使服务器成为使用 WCF 的 Windows 服务。服务器可以通过为每个客户端使用不同的命名管道来通知客户端?

谢谢...任何建议将不胜感激。

4

3 回答 3

1

只需通过 tcp/命名管道/msmq/http (WSDualHttpBinding) 通道使用双工通信。AFAIK 你需要两个端口(输入/输出)用于通过 http 进行双工

于 2013-10-03T21:56:20.700 回答
0

这是一个可接受的解决方案,应该可以正常工作。

其他需要考虑的选项(本着学习的精神)是创建一个路由服务作为中介服务,它产生对多个服务的调用。因此,在您的场景中,您的客户端将调用路由服务,而路由服务将依次调用您的每个服务

以下链接应提供有关路由服务的更多信息...

[路由服务][1]

http://msdn.microsoft.com/en-us/library/ee517423.aspx

于 2013-10-04T18:59:28.013 回答
0

我会完全放弃 wcf。尽管正如 Brian 所说,您可以使用双工绑定,但充其量是复杂的。

如果这一切都将在同一台计算机上运行,​​你为什么还需要客户端/服务器?只需构建一个客户端即可满足您的所有需求。

于 2013-10-04T07:33:58.393 回答