阶段
说明
页请求
页请求发生在页生命周期开始之前。 用户请求页时,ASP.NET 将确定是否需要分析和编译页(从而开始页的生命周期),或者是否可以在不运行页的情况下发送页的缓存版本以进行响应。
启动
在启动阶段,将设置页属性,如 Request 和 Response。 在此阶段,页还将确定请求是回发请求还是新请求,并设置 IsPostBack 属性。 页还设置 UICulture 属性。
初始化
页初始化期间,可以使用页中的控件,并将设置每个控件的 UniqueID 属性。 如果需要,还会向页应用于母版页和主题。 如果当前请求是回发请求,则回发数据尚未加载,并且控件属性值尚未还原为视图状态中的值。
加载
加载期间,如果当前请求是回发请求,则将使用从视图状态和控件状态恢复的信息加载控件属性。
回发事件处理
如果请求是回发请求,则将调用控件事件处理程序。 之后,将调用所有验证程序控件的 Validate 方法,此方法将设置各个验证程序控件和页的 IsValid 属性。
呈现
在呈现之前,会针对该页和所有控件保存视图状态。 在呈现阶段中,页会针对每个控件调用 Render 方法,它会提供一个文本编写器,用于将控件的输出写入页的 Response 属性的 OutputStream 对象中。
卸载
完全呈现页并已将页发送至客户端、准备丢弃该页后,将引发 Unload 事件。 此时,将卸载页属性(如 Response 和 Request)并执行清理。