WCF托管在Windows服务错误中

时间:2011-05-10 23:58:00

标签: windows wcf service host

我在VB中有一个WCF,它将托管在Windows服务中。我管理安装程序,所以服务实际安装。但是,当我尝试启动该服务时,我收到以下错误:

  

本地计算机上的服务已启动   然后停了下来一些服务停止   自动,如果他们没有工作   例如,执行性能日志   和警报服务。

Cheking事件查看器给我以下内容:

  

无法启动服务。   System.ArgumentException:ServiceHost   仅支持班级服务类型   在   System.ServiceModel.Description.ServiceDescription.GetService(类型   的serviceType)
  在   System.ServiceModel.ServiceHost.CreateDescription(IDictionary`2&安培;   implementedContracts).........

有人知道发生了什么吗?谢谢!

2 个答案:

答案 0 :(得分:2)

ServiceHost构造函数必须是服务契约的具体实现。

听起来你正在传递接口而不是服务实现。

答案 1 :(得分:1)

  svh = new ServiceHost(typeof(MCWCFService.MCManagementService));
  svh.AddServiceEndpoint(
          typeof(MCWCFService.IMCManagementService),
          new NetTcpBinding(),
          "net.tcp://192.168.0.2:8011");
  svh.Open();

创建ServiceHost时使用类名 - 在上面它是MCManagementService。在端点中,使用接口 - 在上面它是IMCManagementService。