2011-07-18 29 views
1

我有一個ASP.NET http模塊,它添加了一個響應過濾器,並根據正則表達式對傳出的HTML做了一些更改。有一天我注意到它似乎不再正常工作。經檢查,我注意到方法永遠不會被調用。ASP.NET Response.Filter不會調用寫

我相信在我們轉移到.NET 4.0/IIS 7.5(來自3.5/IIS 6)後我們開始發生這種情況,現在我們使用集成模式。

響應過濾器獲取的IHttpModule的的BeginRequest事件添加...

context.Response.Filter = new FormActionFilter(context.Response.Filter); 

我沒看到,響應濾波器的沖洗關閉方法被調用,但我在寫斷點從來沒有擊中。

任何人都會遇到這個問題,或對此有何看法?

+0

您是否找到解決此問題的解決方案?我有完全相同的問題...¨ –

回答

1

web.config中的http模塊部分已從iis6更改爲iis 7。它應該在System.WebServer下而不是system.Web - > httpModules中。你有沒有做過這個改變?

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

是的,我已經有了這些變化。 Http模塊在IIS7中運行良好,我可以調試它。真正的問題是即使Filter被加載,刷新和關閉,修改數據的實際邏輯也在Filter的Write方法中,並且由於某種原因它不會被調用。 – DennyFerra

+0

這個鏈接怎麼樣.. http://stackoverflow.com/questions/2474358/iis7-isapi-filter-module-httpmodule-events-how-do-they-line-up ..它似乎有一些變化IIS7。你可能想閱讀。不知道它是否相同,但看起來相似。 –

相關問題