我使用命名管道设置了WCF服务器/客户端,我的客户端连接到主机进程(已经运行),如下所示:
var pipeFactory = new DuplexChannelFactory<IArbiter>(this, new NetNamedPipeBinding(), new EndpointAddress(new Uri("net.pipe://localhost/IArbiter")));
arbiter = pipeFactory.CreateChannel();
这适用于第一个客户端连接,但是当第二个客户端连接时,会创建一个新的IArbiter实现实例(每次发生连接时都会调用仲裁器的构造函数。)
有没有办法找到&#34;现有的&#34;端点地址处的仲裁器的实例?
答案 0 :(得分:0)
想出来,只需要在我的类实现上面设置它:
[ServiceBehavior(InstanceContextMode = InstanceContextMode.Single)]