C# 在非管理模式下创建的WCF netpipe存在连接问题

C# 在非管理模式下创建的WCF netpipe存在连接问题,c#,wcf,ipc,named-pipes,C#,Wcf,Ipc,Named Pipes,我已经在“net”上创建了WCF网络管道连接。pipe://localhost/IBS,它有一个端点在“BasicService”侦听 在我的应用程序中创建和托管都很好。但是当我试图通过“网络连接到这个。pipe://localhost/IBS/BasicService“此连接失败 它抛出如下异常。 There was no endpoint listening at **net.pipe://localhost/IBS/BasicService** that could accept the

我已经在“net”上创建了WCF网络管道连接。pipe://localhost/IBS,它有一个端点在“BasicService”侦听

在我的应用程序中创建和托管都很好。但是当我试图通过“网络连接到这个。pipe://localhost/IBS/BasicService“此连接失败

它抛出如下异常。

There was no endpoint listening at **net.pipe://localhost/IBS/BasicService** that could accept the message. 
This is often caused by an incorrect address or SOAP action. See InnerException, if present, for more details.
在深入研究这个问题时,我发现只有当托管应用程序在非管理模式下运行时,才会发生连接故障。如果切换到管理模式,则连接成功

发生此问题的原因是网络上有其他管道处于打开状态。pipe://localhost在管理模式下。因此,当我的客户尝试与网络通信时。pipe://localhost/IBS/BasicService它最终在网络中搜索。pipe://localhost对于IBS/BasicService。我想让它在网上搜索。pipe://localhost/IBS用于基本服务

以管理模式运行的服务优先。WCF中是否有其他配置方法,或者至少在未在localhost中查找后,它还应尝试在localhost/IBS中查找


谢谢

我的建议是,但我不确定它是否能与netpipe一起工作,请查看wcf中的故障转移。在这种情况下,链路故障转移将不起作用-原因是其他备用连接也会遇到相同的问题。在故障转移中,所有的都必须是net.pipe,并带有一些由非管理员创建的唯一地址。我在这篇文章中看到“讨论”是围绕同一领域展开的,但没有合适的解决方案。实际上微软应该解决这个问题。实际上,WCF nat管道本身存在问题。我可以建议,但我不确定它是否适用于netpipe,请查看WCF中的故障切换。在这种情况下,链路故障切换将不起作用-原因是其他备用连接也会遇到同样的问题。在故障转移中,所有的都必须是net.pipe,并带有一些由非管理员创建的唯一地址。我在这篇文章中看到“讨论”是围绕同一领域展开的,但没有合适的解决方案。实际上微软应该解决这个问题。这实际上是WCF nat管道本身的问题。