Windows窗体中的主机WCF:打开主机时出错

本文关键字:主机 出错 WCF 窗体 Windows | 更新日期: 2023-09-27 18:12:00

我正在尝试通过windows桌面应用程序启动和停止WCF服务库,但被卡住了。我无法启动它,因为shost.Open();

出现了错误代码:

private void startwcfedcHost()
{
    ServiceHost shost = new ServiceHost(typeof(WcfServiceLibrary.Service));
    shost.Open();
}
错误:

Service 'WcfServiceLibrary.Service' has zero application (non-infrastructure) 
endpoints.

这可能是因为没有找到您的应用程序的配置文件,或者因为在配置文件中没有找到与服务名称匹配的服务元素,或者因为没有在服务元素中定义端点。

但是当我尝试运行我的wcf服务时,它工作,我该如何解决这个问题?

Windows窗体中的主机WCF:打开主机时出错

由于没有通过代码指定端点,因此需要通过配置指定端点。您可能缺少的是配置文件。更改Main方法(如果是控制台应用程序;如果你正在编写一个windows应用程序,就像Page_Loaded事件一样)打印以下值:

AppDomain.CurrentDomain.SetupInformation.ConfigurationFile

将显示应用程序期望其配置文件的名称。一旦有了这个文件,请确保该文件存在,并且它具有适当的<system.serviceModel>部分来定义服务端点。

我建议你看一下以下内容:

这里的

WCF是关于A(地址)B(绑定)C(契约)的,需要指定绑定