我正在尝试在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