根据Lutz Roeder的Reflector对System.Web.dll的反编译,下面是HttpApplication,Page和Control对象的主要方法和事件的流程

     PostBack
     Page/Control Event
     CallBack
HttpApplicationPageControl
BeginRequest    
AuthenticateRequest    
DefaultAuthentication    
PostAuthenticateRequest    
AuthorizeRequest    
PostAuthorizeRequest    
ResolveRequestCache    
PostResolveRequestCache    
MapHttpHandler Construct  
PostMapRequestHandler    
AcquireRequestState (Session)    
PostAcquireRequestState    
PreRequestHandlerExecute    
CallHandler DeterminePostBackMode  
LoadScrollPosition  
PerformPreInit
--PreInit
--InitializeThemes
--ApplyMasterPage
 
InitRecursive
(--ResolveAdapter
--ApplySkin
--Init
--TrackViewState)
ResolveAdapter
InitRecursive
ApplySkin
Init
TrackViewState
InitComplete  
LoadAllState
--LoadPageStateFromPersistenceMedium
--LoadViewStateRecursive
LoadControlStateInternal
--LoadControlState
LoadViewStateRecursive
--LoadViewState
ProcessPostData  
PreLoad  
LoadRecursive
(--Load)
LoadRecursive
--Load
ProcessPostData  
RaiseChangedEvents  
RaisePostBackEvent  
LoadComplete  
RaiseCallbackEvent
--return
 
PreRenderRecursiveInternal
(--PreRender)
PreRenderRecursiveInternal
--PreRender
ExecuteRegisteredAsyncTasks **  
PerformPreRenderComplete
--PreRenderComplete
 
SaveAllState
--SaveViewStateRecursive
--SavePageStateToPersistenceMedium
SaveControlStateInternal
--SaveControlState
SaveViewState
--SaveViewStateRecursive
SaveStateComplete  
RenderControl RenderControl
--RenderControlInternal
----Render
------RenderChildren
--------RenderChildrenInternal
PostRequestHandlerExecute    
ReleaseRequestState (Session)    
PostReleaseRequestState    
CallFilter -- Response.FilterOutput    
UpdateRequestCache    
PostUpdateRequestCache    
EndRequest    


** 参考 Jeff Prosise在MSND杂志10月期的文章
Asynchronous Pages in ASP.NET 2.0
Posted on 2006-08-17 13:54  arts  阅读(357)  评论(0编辑  收藏  举报