在我的场景中,我有一个为其他应用程序提供服务的应用程序,这个应用程序是服务主机并命名为“mainApp”,我有n个应用程序,它们拥有自己的服务,主机应用程序可以从每个应用程序调用一个方法。 所有其他应用程序都知道主机IP地址并可以从中调用方法,但主机应用程序不知道其他应用程序地址。 我在stackover,weblogs和msdn中找到了对等和双工客户端,但我认为他们无法解决我的问题,我发现代码喜欢以下代码: 在客户:
factory =
new DuplexChannelFactory<IChatChannel>(context, "ChatEndPoint");
channel = factory.CreateChannel();
服务器(主服务主机)中的
cprs = new CustomPeerResolverService();
cprs.RefreshInterval = TimeSpan.FromSeconds(5);
host = new ServiceHost(cprs);
cprs.ControlShape = true;
cprs.Open();
host.Open(TimeSpan.FromDays(1000000));
lblMessage.Text = "Server started successfully.";
我希望mainApp可以从所有其他应用程序的服务调用方法,或者从另一个应用程序调用方法,而不向所有其他应用程序发送消息。 我是WCF编程的新手,我不知道用wcf解决这个问题,请求我提出任何想法。 感谢