どのように私はのhttpHandlersを使用してからIIS7を停止することができますか?

StackOverflow https://stackoverflow.com/questions/2559939

質問

私は、IIS7で遊ぶのビットを持つだけのglobal.asaxに手動でキャッチイベントにしようとすると、完全にASP HTTPHandlerのパイプラインをスキップしています。この目的を達成するために、私が設定した

<httpHandlers>
    <clear/>
</httpHandlers>
<httpModules>
    <clear/>
</httpModules>   

私は、サーバーを呼び出すとき、私はYSODを取得

[HttpException]: No http handler was found for request type 'GET'
   at System.Web.HttpApplication.MapHttpHandler(HttpContext context, String requestType, VirtualPath path, String pathTranslated, Boolean useAppConfig)
   at System.Web.HttpApplication.MapHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
   at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)

私は完全に従来のパイプラインを使用して物事を処理するからIISを防ぐために行う必要がありますか?私が欲しいのは、単にHttpApplication.Init

に設定するイベントハンドラと非同期メソッドでResponse.Writesを行うことです

編集:私の質問は、OBVました。不明瞭なビット(申し訳ありませんその時間無駄にして誰にも) - 私は私がやろうとしていることはかなり型破りであるとして、より良い説明している必要があります。 HttpApplicationで非同期メソッドにハンドラを配線することで - 私はNode.jsのと同様の方法でWebリクエストを処理するためにIISを使用することができるかどうかを確認しようとしています。この目的を達成するために、私は私がのhttpHandlersを使用したくないので、ASPがグラグラを投げて停止する必要があります。現在、私の最善の策は、すべての要求に対してNullHttpHandlerを使用することですが、私は完全のHttpHandlerシステムを無効にすることができれば、私は思ったんだけど。あなたのアイデア!

役に立ちましたか?

解決

あなたはIISが必要です。リクエストは、IISパイプラインで開始し、ASP .NETのためにそれを処理するために、A HTTPハンドラを見つけることができるようにする必要性をIIS、それはへの要求を渡すことができます。それはappropiateハンドラを見つけただけで後はASP .NETに要求を渡します。

他のヒント

あなたはStaticFileHandler再度追加する必要があります:

  <httpHandlers>
    <clear />
    <add verb="*" path="*.jpg" type="System.Web.StaticFileHandler" />
  </httpHandlers>

私はそのaが古いビット知っている...しかし、あなた、あなたのIEの場合。ハンドラアサインBeginRequestHttpApplicationイベントはこのエラーを取得してはならない、空のweb.configファイルにハンドラ・セクションを残すことができHttpContext.Current.Handlerします。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top