在WCF服务中未发现端点异常

本文关键字:端点 异常 未发现 WCF 服务 | 更新日期: 2023-09-27 18:17:42

我正在接近WCF服务,从微软提供的教程开始。我创建了一个非常简单的WCF服务(CalculatorService),我对这个服务的EndpointAddress有一些疑问。

当我创建WCF主机时,我这样设置端点:

Uri baseAddress = new Uri("http://localhost:8000/GettingStarted/");
// Step 2 Create a ServiceHost instance
ServiceHost selfHost = new ServiceHost(typeof(Service1), baseAddress);
// Step 3 Add a service endpoint.
selfHost.AddServiceEndpoint(typeof(IService1), new WSHttpBinding(), "CalculatorService");

如果我调试整个解决方案,一切都可以工作,但是,如果我启动WCFHost执行其.exe文件,启动客户端的应用程序也会给我以下例外:

System.ServiceModel.EndpointNotFoundException: No endpoint listening in http://localhost:8732/Design_Time_Address/WcfServiceLibrary/Service1/.

事实是,如果我尝试打开浏览器并搜索地址http://localhost:8000/GettingStarted/,我可以正确地获得服务的页面。我假设服务托管在一个地址上,客户端试图通过另一个地址访问它。

谁能帮我解决这个问题?

在WCF服务中未发现端点异常

如果您在客户端代码中硬编码了此地址http://localhost:8732,那么在那里更改它。但是你的客户端可能是自动生成的(不幸的是,你没有把这些信息放在你的问题中)。在这种情况下,客户端配置在App.config文件中(如果我们正在谈论您的解决方案),并且在构建项目时在.exe文件的配置文件中。您应该查看您的[ClientApplicationName].exe。配置文件并将端点地址更新为端口8000。