C# ASP.NET响应。筛选器不调用写入

C# ASP.NET响应。筛选器不调用写入,c#,asp.net,response.filter,C#,Asp.net,Response.filter,我有一个ASP.NET http模块,它添加了一个响应过滤器,并基于正则表达式对传出的HTML进行了一些更改。前几天我注意到它似乎不再正常工作了。检查后,我注意到Write方法从未被调用 我相信这是在我们转向.NET 4.0/IIS 7.5(从3.5/IIS 6)之后开始的,现在我们使用集成模式 在IHttpModule的BeginRequest事件中添加响应筛选器 context.Response.Filter = new FormActionFilter(context.Response.F

我有一个ASP.NET http模块,它添加了一个响应过滤器,并基于正则表达式对传出的HTML进行了一些更改。前几天我注意到它似乎不再正常工作了。检查后,我注意到Write方法从未被调用

我相信这是在我们转向.NET 4.0/IIS 7.5(从3.5/IIS 6)之后开始的,现在我们使用集成模式

在IHttpModule的BeginRequest事件中添加响应筛选器

context.Response.Filter = new FormActionFilter(context.Response.Filter);
我确实看到响应过滤器的FlushClose方法被调用,但我在Write中的断点从未被命中


其他人是否也遇到过此问题,或者对发生此情况的原因有何见解?

在iis 7中,web.config中的http模块部分已从iis6更改。它应该位于System.WebServer下,而不是System.Web->HttpModule下。你已经改变了吗

 <system.webServer>
       <modules>
             <add name="YourModuleName" type="YourNamespace.YourModuleClassName,YourAssemblyName"/>
    </modules>

在iis 7中,web.config中的http模块部分已从iis6更改。它应该位于System.WebServer下,而不是System.Web->HttpModule下。你已经改变了吗

 <system.webServer>
       <modules>
             <add name="YourModuleName" type="YourNamespace.YourModuleClassName,YourAssemblyName"/>
    </modules>


是的,我已经有了这些更改。Http模块在IIS7中运行良好,我能够调试它。真正的问题是,即使过滤器被加载、刷新和关闭,修改数据的实际逻辑仍在过滤器的Write方法中,并且由于某种原因没有被调用。这个链接如何。。似乎iis7有一些变化。你可能想看看这个。不知道是不是一样,但看起来很相似。是的,我已经有了这些变化。Http模块在IIS7中运行良好,我能够调试它。真正的问题是,即使过滤器被加载、刷新和关闭,修改数据的实际逻辑仍在过滤器的Write方法中,并且由于某种原因没有被调用。这个链接如何。。似乎iis7有一些变化。你可能想看看这个。不确定是否是同一件事,但看起来很相似。你找到这个问题的解决方案了吗?我有完全相同的问题…¨你找到这个问题的解决方案了吗?我也有同样的问题