首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WebServiceHost2Factory的使用

WebServiceHost2Factory的使用
EN

Stack Overflow用户
提问于 2011-08-25 05:51:07
回答 1查看 3.3K关注 0票数 0

"WebServiceHost2Factory“有什么用?我正在创建Rest Wcf服务。我正在使用VS2010,所以我需要安装WCF Kit吗??当我将'Microsoft.ServiceModel.Web.WebServiceHost2Factory‘添加到我的服务标记中时,我得到了一个错误消息:“在服务编译期间,无法加载CLR类型的WebServiceHost2Factory”。我在这里错过了什么。这是我的服务markUp。

代码语言:javascript
复制
<%@ ServiceHost Language="C#" Debug="true" Service="WCFRESTService1.Service1" CodeBehind="Service1.svc.cs" Factory = "Microsoft.ServiceModel.Web.WebServiceHost2Factory"  %>

任何帮助都将不胜感激。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-08-25 06:45:16

使用WebServiceHost2Factory和WebProtocolException进行错误处理

构建API的很大一部分工作是确保有足够的错误处理,以帮助用户实现您的API。在WebServiceHost2Factory发布之前,返回适当的HTTP响应代码和消息是一件苦差事。幸运的是,我们可以通过利用WebServiceHost2Factory和WebProtocoException类快速轻松地实现这一壮举。

以上文本来自以下link

可以从以下link中找到以下帮助来解决您的问题。

解析器错误:编译期间无法加载服务类型

从浏览器浏览WCF服务(.svc文件)时,您可能会收到以下错误消息:

在服务编译期间无法加载CLR类型'XXXX‘。验证此类型是在位于应用程序的\App_Code目录中的源文件中定义的,包含在位于应用程序的\bin目录中的已编译程序集中,还是存在于安装在全局程序集缓存中的程序集中。请注意,类型名称区分大小写,\App_Code和\bin等目录必须位于应用程序的根目录中,不能嵌套在子目录中。

错误消息本身就很容易解释。然而,我仍然想指出可能发生这种情况的不同情况。以下是.svc文件的服务指令的格式:

代码语言:javascript
复制
<%@Service language=c# Class="<Managed Type>" [Other attributes] %>

以下是发生这种情况的可能原因:

  • 为“Class”属性指定的字符串不代表现有的CLR类型。有时,这可能是由于打字错误。此字符串区分大小写。此外,如果您从MS-Word复制此文件,引号可能是一些特殊的Unicode字符,而不是真正的sub-directory.
  • If。
  • 如果程序集(包含服务类型)位于\bin目录中,则可能没有创建虚拟目录,以便其根目录包含\bin作为其直接目录。您可以在\App_Code下的代码文件中键入您的类型,原因可能与上述相同。
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7182760

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档