ASP.NET的页面——ASP.NET页面的生命周期
ASP.NET页面被预编为IL,以便在浏览器轻轻它是由.NET Framework执行,一个部署的ASP.NET应用程序一般在ASP.NET配置文件和资源文件之外只包括前端的ASPX文件和核心对象DLL,在部署的服务器上不要求语言(C#,VB.NET等)的后台代码文件,因为它们已经编译到一个.NET对象DLL中了(DLL一般位于ASP.NET应用程序的BIN目录下)。
当一个ASP.NET页面被第一次请求时,它被.NET CLR即时编译,然后运行,这是为什么在编译ASP.NET页面之后第一次执行时会比较慢的原因,此后,被编译的页面被缓存并用于随后的请求。
页面请求执行一系列的主要步骤:页面的初始化(Page_Init)、页面加载(Page_Load)、控件事件、页面卸载事件(Page_PreRender,Page_UnLoad,Dispose).具体如下图所示:
网上有个快速记住这个生命周期的方法:
这样的组合就是(SILVER:银),如果是和UnLoad也结合进去就是SILVER—U。
除了这些之外,页面请求还触发一些应用程序级别的请求事件。如Application_BeginRequest事件,它在所有页面请求开始触发。Application_EndRequest事件,它在所有信息已经传到浏览器后触发。