在IIS 8.5中为IHttpModule“无法加载类型xxx”

时间:2017-09-21 20:27:39

标签: c# asp.net iis web-config httpmodule

我在ASP.NET中创建了一个http模块

namespace aellerb.App_Code
{
  public class ContentParser : IHttpModule
  {
     ...
  }
}

在web.config中配置如下:

<system.webServer>
  <modules runAllManagedModulesForAllRequests="true">
    <add name="ContentParser" type="aellerb.App_Code.ContentParser"/>
  </modules>
</system.webServer>

在IISExpress中本地运行时,模块可以正常工作和加载。但是,当我在IIS 8.5下将其部署到我的Web主机时,我得到:

System.Web.HttpException:无法加载类型'aellerb.App_Code.ContentParser'。

知道我在这里缺少什么吗?

2 个答案:

答案 0 :(得分:0)

通过这个article,我发现“自定义处理程序和模块源代码可以放在应用程序的App_Code文件夹中......”。

所以我在服务器上创建了一个名为App_Code的文件夹,并将我的http模块.cs文件复制到那里。它现在加载,问题解决了。

答案 1 :(得分:0)

您可能需要声明程序集名称 试试这个

<system.webServer>
  <modules runAllManagedModulesForAllRequests="true">
    <add name="ContentParser" type="aellerb.App_Code.ContentParser, {your_web_application_dllname_without_extention_name}"/>
  </modules>
</system.webServer>