我正在嘗試在global.asax中手動捕獲事件並完全跳過ASP httphandler管道。爲此,我已經設置如何阻止IIS7使用HttpHandlers?
<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使用傳統的管道搬運東西?我想要的只是做事件處理程序中的Response.Writes和HttpApplication.Init中設置的異步方法
編輯:我的問題是obv。有點不清楚(對於那些浪費時間的人來說很抱歉) - 我應該更好地解釋,因爲我想要做的事非常非常規。我正在嘗試查看是否可以使用IIS以類似於node.js的方式處理Web請求 - 通過將處理程序連接到HttpApplication中的異步方法。爲此,我需要ASP停止投擲搖擺,因爲我不想使用HttpHandlers。目前我最好的選擇是對所有請求使用NullHttpHandler,但我想知道是否可以完全禁用HttpHandler系統。你的想法!
所以我應該創建一個NullHttpHandler並且註冊所有請求類型? – mcintyre321 2010-04-01 11:32:11
是的,你可以做到這一點。 – driis 2010-04-01 11:41:59