ASP.NET Page Life Cycle
普通页面生命周期阶段:
在通常情况下,普通页面生命周期经历下面的阶段。之前和之后都有application阶段发生。具体可参照application生命周期。
1.页面请求
描述:page请求发生在page生命周期之前,当page被用户请求,asp.net决定是否需要page解析和编译,或者是否有一个内存版本的page能被返回不需要运行page。
2.开始:
描述:在开始步骤中,页面属性例如request,response被设置。这个阶段,页面决定是否需要postback或者一个新的请求并设置ispostback属性。另外,页面的uiculture属性被设置。
3.页面初始化:
描述: 在初始化阶段,控件可用并每一个控件的UniqueID属性被设置,所有page主题也被应用。如果当前request是二次请求(postback),这个postback数据没有被载入并且控件的属性不能从viewstate中读出赋予。
4.载入:
描述:载入期间,如果当前请求是postback,控件属性从viewstate和控件状态信息中恢复。
5.验证:
描述:页面中所有被设置isVaild属性和单独的验证控件的验证方法被调用。
6.postback事件处理:
描述:如果是postback,所有事件handler调用。
7.呈现:
描述:在呈现前,viewstate保存页面和所有控件,在这个阶段,页面调用每个控件的Render方法,提供一个text writer写页面response属性的outputStream。
8.卸载:
描述:当页面被完全呈现,返回给客户端和准备被放弃后,这时page的response和request属性被执行卸载和清理。
asp.net page页面事件:
1 page_preInit
2 page_Init
3 page_InitComplete
4 page_PreLoad
5 page_Load
control events
6 page_LoadComplete
7 page_SaveStateComplete
8 page_Render
9 page_Unload