有没有人知道某个站点或页面,或者知道HTTPModule事件执行的HTTPApplication类事件的执行顺序?
我找到了所有事件的MSDN文档,但它没有显示进程步骤列表,但我找不到.
也许这有帮助
http://support.microsoft.com/kb/307985/en-us/
HttpApplication类提供了许多可以与模块同步的事件.以下事件可用于与每个请求同步的模块.这些事件按顺序列出:
的BeginRequest
AuthenticateRequest
的AuthorizeRequest
ResolveRequestCache
的AcquireRequestState
的PreRequestHandlerExecute
PostRequestHandlerExecute
ReleaseRequestState
的UpdateRequestCache
EndRequest
以下事件可用于与每个请求传输同步的模块.这些事件的顺序是不确定的.
PreSendRequestHeaders
PreSendRequestContent
错误
有关完整信息,请参阅文章.
MSDN Library文档:
IIS 5.0和6.0的ASP.NET应用程序生命周期概述
IIS 7.0的ASP.NET应用程序生命周期概述
以下是ASP.NET 4.0请求管道中的事件(粗体)和其他步骤:
验证请求,该请求检查浏览器发送的信息并确定其是否包含潜在的恶意标记.
如果在Web.config文件的UrlMappingsSection部分中配置了任何URL,请执行URL映射.
提升BeginRequest事件.
提升AuthenticateRequest事件.
提升PostAuthenticateRequest事件.
提升AuthorizeRequest事件.
提升PostAuthorizeRequest事件.
提升ResolveRequestCache事件.
提升PostResolveRequestCache事件.
[IIS 5.0/6.0]根据所请求资源的文件扩展名(映射到应用程序的配置文件中),选择一个实现IHttpHandler的类来处理请求.如果请求是针对从Page类派生的对象(页面)并且需要编译页面,则ASP.NET会在创建页面实例之前编译该页面.[IIS 7.0]提升MapRequestHandler事件.根据所请求资源的文件扩展名选择适当的处理程序.处理程序可以是本机代码模块,例如IIS 7.0 StaticFileModule,也可以是托管代码模块,例如PageHandlerFactory类(处理.aspx文件).
提升PostMapRequestHandler事件.
提升AcquireRequestState事件.
提升PostAcquireRequestState事件.
提升PreRequestHandlerExecute事件.
调用ProcessRequest方法(或异步版本IHttpAsyncHandler.BeginProcessRequest)适当的IHttpHandler类的请求.例如,如果请求是针对页面的,则当前页面实例处理该请求.
提升PostRequestHandlerExecute事件.
提升ReleaseRequestState事件.
提升PostReleaseRequestState事件.
如果定义了Filter属性,则执行响应过滤.
提升UpdateRequestCache事件.
提升PostUpdateRequestCache事件.
[IIS 7.0]提升LogRequest事件.
[IIS 7.0]提升PostLogRequest事件.
提升EndRequest事件.
提升PreSendRequestHeaders事件.
提升PreSendRequestContent事件.
注意:仅当应用程序在IIS 7.0中以集成模式运行并且使用.NET Framework 3.0或更高版本时,才支持MapRequestHandler,LogRequest和PostLogRequest事件.