2

我在此链接中创建了 Web 服务库http://www.codeproject.com/Articles/167159/How-to-create-a-JSON-WCF-RESTful-Service-in-60-sec

为了发布它,我点击了链接http://naztek.wordpress.com/2009/08/27/host-a-wcf-library-in-iis/

但我在运行时收到此错误

“/WCFService1”应用程序中的服务器错误。

找不到类型“服务”,作为 ServiceHost 指令中的服务属性值提供,或在配置元素 system.serviceModel/serviceHostingEnvironment/serviceActivations 中提供。

说明:执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。

异常详细信息:System.InvalidOperationException:“服务”类型,作为 ServiceHost 指令中的服务属性值提供,或在配置元素 system.serviceModel/serviceHostingEnvironment/serviceActivations 中提供。

web.config的是:

<configuration>
  <system.web>
    <compilation debug="true" targetFramework="4.0"/>
  </system.web>
  <system.serviceModel>
    <behaviors>
      <serviceBehaviors>
        <behavior>
          <serviceMetadata httpGetEnabled="true"/>
          <serviceDebug includeExceptionDetailInFaults="false"/>
        </behavior>
      </serviceBehaviors>
    </behaviors>
    <serviceHostingEnvironment multipleSiteBindingsEnabled="true"/>
    <services>
      <service name="test1.Try">
        <endpoint address="http://localhost:8732/Try" binding="webHttpBinding" contract="test1.Try"/>
      </service>
    </services>
  </system.serviceModel>
  <system.webServer>
    <modules runAllManagedModulesForAllRequests="true"/>
  </system.webServer>
</configuration>

源错误:

在执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪来识别有关异常起源和位置的信息。

[InvalidOperationException:找不到类型“服务”,作为 ServiceHost 指令中的服务属性值提供,或在配置元素 system.serviceModel/serviceHostingEnvironment/serviceActivations 中提供。]

4

1 回答 1

1

在我看来,您错过了第二个链接(关于发布)的第 3 步。特别是这部分:

将 Service 属性值从 Service 更改为 WCF 库中具体类的完全限定名称,例如 RegistrationServiceLib.RegistrationService

要打开 svc 文件,请使用右键单击 -> 打开方式 -> XML(文本)编辑器

您应该看到如下内容:

<%@ ServiceHost Language="C#" Debug="true" Service="YourNamespace.Service" CodeBehind="Service.svc.cs" %>

更改它以匹配您的服务(就像您的教程所述)。

于 2012-05-19T22:03:18.260 回答