2

当我尝试托管 WCF 服务时,我遇到了以下异常:

Service 'WcfServiceLibrary3.Service1' has zero application (non-infrastructure) endpoints. This might be because no configuration file was found for your application, or because no service element matching the service name could be found in the configuration file, or because no endpoints were defined in the service element.

我正在使用以下代码:

using (System.ServiceModel.ServiceHost host = new System.ServiceModel.ServiceHost(typeof(WcfServiceLibrary1.Service1)))//Line 1
        {
            host.Open();

            Console.WriteLine("Service started. press any key to stop it");
            Console.ReadLine();
            host.Close();
        }

此错误出现在第 1 行。任何人都可以帮助解决此异常。

4

2 回答 2

2

如果您使用控制台应用程序来托管服务并在另一个类库中定义您的服务,那么您需要以正确的方式使用 app.config。

尝试将 app.config 添加到您托管服务的控制台应用程序中。

还要匹配服务名称和基本 url。

希望此代码有助于托管服务:

static void Main(string[] args)
    {
        // Create the ServiceHost.
        using (ServiceHost host = new ServiceHost(typeof(HelloWorldService)))
        {
            host.Open();

            Console.WriteLine("The service is ready at {0}", baseAddress);
            Console.WriteLine("Press <Enter> to stop the service.");
            Console.ReadLine();

            // Close the ServiceHost.
            host.Close();
        }
    }
于 2013-06-05T13:03:26.530 回答
1

您似乎没有在应用程序中添加对您创建的服务的引用。

您需要右键单击您的应用程序。

选择选项作为添加服务参考。

将链接 [地址] 粘贴到服务。

为实例命名。

这将排序问题。

遵循这种方法。

希望它有帮助。

于 2013-06-05T09:31:30.150 回答