2012-04-16 9 views
1

応答フィルタを追加し、要求されたファイルにいくつかの変更を加える.NET IHttpModuleがあります。しかし、これはVisual Studioを介して動作しますが、IISを介してこの作業を行うことはできません。 II7、v2.0.50727フレームワークを使用します。.NET Response.FilterはIIS7でWrite()を呼び出さない

応答フィルタは、のIHttpModuleのBeginRequestイベントイベントに追加されます...

次呼び出す
context.Response.Filter = new myFilter(context); 

...

public myFilter(HttpContext myContext) 
{ 
    if (myContext.Response.Filter == null) 
     throw new ArgumentNullException("ResponseStream"); 
    this._responseStream = myContext.Response.Filter; 
    _context = myContext; 
} 

私が見ることができる応答フィルタのフラッシュ()およびClose()メソッドが呼び出されますが、Write()のブレークポイントは決してヒットしません。

誰でもWrite()が呼び出されていない理由を説明できますか? ASP.NET Response.Filter does not call Write - - 私は解決の答えを見つけることができませんでしたから

私のweb.configファイルが正しくこれがまさに問題がここに発見された

IIS7とVisual Studio(モジュール& HttpModuleをなど)の両方のモジュールを登録するように設定されています私の問題。

答えて

1

誰かが興味があれば、問題が見つかりました。これは、MIMEタイプとして登録されていないファイル拡張子を処理しようとしているためです。 IISでこのMIMEタイプを宣言すると、問題が解決されました。

関連する問題