当我尝试在 WCF 主机中调用该方法时,出现此错误:
在 net.pipe://localhost/PipeReverse 上没有可以接受消息的端点侦听。这通常是由不正确的地址或 SOAP 操作引起的。有关更多详细信息,请参阅 InnerException(如果存在)。
我有一个启动 WCF 主机的类:
public class ProcessUnderMouseServer
{
public ProcessUnderMouseServer()
{
using (host = new ServiceHost(
typeof(PrcoessUnderMouse),
new Uri[]
{
new Uri("net.pipe://localhost")
}))
{
host.AddServiceEndpoint(
typeof(IPrcoessUnderMouse),
new NetNamedPipeBinding(),
"PipeReverse");
host.Open();
}
}
}
此类与消费项目位于不同的库项目中
然后我尝试像这样消费它:
ProcessUnderMouseServer ProcessUnderMouseServer = new ProcessUnderMouseServer();
ChannelFactory<IPrcoessUnderMouse> pipeFactory =
new ChannelFactory<IPrcoessUnderMouse>(
new NetNamedPipeBinding(),
new EndpointAddress(
"net.pipe://localhost/PipeReverse"));
IPrcoessUnderMouse pipeProxy = pipeFactory.CreateChannel();
string str = Console.ReadLine();
Console.WriteLine("pipe: " + pipeProxy.GetProcessUnderMouse());
不应该
host.AddServiceEndpoint(typeof(IPrcoessUnderMouse),new NetNamedPipeBinding(), "PipeReverse");
添加终点就足够了吗?为什么这么说no endpoint listening at net.pipe://localhost/PipeReverse
??