一个ASPX页面的生命周期?

大家都知道客户端请求一个ASPX页面,通过iis中接收,会被的interinfo.exe进程截取,判断其扩展名,再把请求转交给ASPNET_ISAPI.DLL,通过isapi扩展进入相应的管道处理,转交给处理器,通过处理器(http handler)指定相应ASPX后台处理。那后台是如何处理的呢?这就是ASPX的生命周期了。从上往下的顺序:

构造函数  到达后台首先执行的是构造函数,构造函数里面初始化页面的事件。

PreInit    接着进入事件PreInit(预初始化),该事件可动态对 Theme 属性的设置 和 读取或设置配置文件属性值。只执行一次

Init     接着进入事件Init(初始化),该事件是读取或初始化控件属性。只执行一次

InitComplete  接着进入事件InitComplete(完成初始化),该事件完成读取或初始化控件属性这些。只执行一次

PreLoad  接着进入事件PreLoad(预加载),第一次进行页面读取页面的控件的属性,第二次对后台控件的属性进行读取这些操作。

Load    接着进入事件Load(加载),设置和更新控件属性。

LoadComplete    接着进入事件LoadComplete(完成控件加载)。

Control events  接着进入控件的一些验证事件,事件有自定义和默认时间这些。

PreRender  接着进入事件PreRender(预呈现),准备要生成HTML文件。该事件是最后次更改页面及控件的最后一次机会。

PreRenderComplete  接着进入事件PreRenderComplete(预呈现完成),生成HTML文件。

OnUnload  最后通过OnUnload事件,结束ASPX的生命周期,将静态页面回传给客户端浏览器。

原文地址:https://www.cnblogs.com/chinese-sam/p/3501592.html