Csharp/C#教程:“服务X没有应用程序端点”,除非我在代码中添加端点 – 为什么?分享


“服务X没有应用程序端点”,除非我在代码中添加端点 – 为什么?

我按照这篇MSDN文章彻底创建了托管在NT服务中的WCF服务。

当我在服务控制台中单击“开始”时,我在事件查看器中看到以下内容:

服务无法启动。 System.InvalidOperationException:服务’MyServiceNamespace.RequestProcessorImpl’没有应用程序(非基础结构)端点。 这可能是因为没有为您的应用程序找到配置文件,或者因为在配置文件中找不到与服务名称匹配的服务元素,或者因为在service元素中没有定义端点。

我试着查看我能找到的所有可能的原因。 这是App.Config文件中的服务描述:

         

所有实体都以其命名空间命名 ,因此这不是问题。 App.Config文件放在bin Debug中 – 正好是NT服务的起始位置。

但是,当我从原始实现更改我的ServiceBase后代OnStart()

 public class RequestProcessorWindowsService : ServiceBase { public ServiceHost serviceHost = null; //other methods skipped protected override void OnStart(string[] args) { if( serviceHost != null ) { serviceHost.Close(); } serviceHost = new ServiceHost( typeof(RequestProcesssorImpl) ); serviceHost.Open(); } } 

到下一个,以便它调用AddServiceEndpoint()服务启动正常(但我不能添加对它的引用,所以我猜其他错误):

 public class RequestProcessorWindowsService : ServiceBase { public ServiceHost serviceHost = null; //other methods skipped protected override void OnStart(string[] args) { if( serviceHost != null ) { serviceHost.Close(); } Uri baseAddress = new Uri("https://localhost:8095/RequestProcessorService"); serviceHost = new ServiceHost( typeof(RequestProcesssorImpl), baseAddress ); serviceHost.AddServiceEndpoint( typeof(IRequestProcessor), new BasicHttpBinding(), baseAddress ); serviceHost.Open(); } } 

为什么我的服务在通过App.Config配置时没有启动?

配置文件中的服务名称与服务实现类不匹配。

配置文件应包含:

上述就是C#学习教程:“服务X没有应用程序端点”,除非我在代码中添加端点 – 为什么?分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

  

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/1302632.html

(0)
上一篇 2023年1月31日
下一篇 2023年1月31日

精彩推荐