但这样注册,会遇到一个错误
这个错误的意思是,LogRequest这个操作,是必须运行在集成模式下的。
那么,到底如何注册成集成模式的模块呢?
我们需要将配置文件修改成下面这样
<?xml version="1.0"?>
<!--
For more information on how to configure your ASP.NET application, please visit
http://go.microsoft.com/fwlink/?LinkId=169433
-->
<configuration>
<system.web>
<compilation debug="true" targetFramework="4.0" />
<!--<httpModules>
<add name="test" type="WebApplication2.MyModule1,WebApplication2"/>
</httpModules>-->
</system.web>
<system.webServer>
<modules>
<add name="test" type="WebApplication2.MyModule1,WebApplication2"/>
</modules>
</system.webServer>
</configuration>
<!--
For more information on how to configure your ASP.NET application, please visit
http://go.microsoft.com/fwlink/?LinkId=169433
-->
<configuration>
<system.web>
<compilation debug="true" targetFramework="4.0" />
<!--<httpModules>
<add name="test" type="WebApplication2.MyModule1,WebApplication2"/>
</httpModules>-->
</system.web>
<system.webServer>
<modules>
<add name="test" type="WebApplication2.MyModule1,WebApplication2"/>
</modules>
</system.webServer>
</configuration>
请注意,现在多了一个system.webServer的节,里面有一个modules的节,可以配置需要注册的一些HttpModule
因为是注册为system.webServer的Module,所以,在visual studio中调试是没有效果的
我们需要将该应用程序发布到IIS,并且设置为integrated mode。
4.发布到IIS
有很多办法进行发布,我所推荐的是用deploy package的方式。