ASP.NET编程模型中ASP.NET页面生命周期是指什么呢?它包括什么呢?ASP.NET编程模型之ASP.NET页面生命周期具体的过程有哪些呢?下面就开始我们的讲解吧:
ASP.NET 页运行时,此页将经历一个生命周期,在生命周期中将执行一系列处理步骤。这些步骤包括初始化、实例化控件、还原和维护状态、运行事件处理程序代码以及进行呈现。了解页的生命周期非常重要,这样就能在合适的生命周期阶段编写代码,以达到预期效果。此外,如果开发自定义控件,则必须熟悉页生命周期,从而正确地初始化控件,使用视图状态数据填充控件属性以及运行所有控件行为逻辑。
ASP.NET编程模型之页面生命周期执行一系列步骤:页面的初始化、实例化控件、还原和维护状态、运行事件处理程序代码、呈现。为了在合适的阶段执行所需的代码,所以要对页面生命周期非常熟悉。在页生命周期的各个阶段,页面会逐个引发定义的事件,通过对代码开发,在页面的生命事件中执行我们所需要的程序
页生命周期阶段
1、ASP.NET页面生命周期之页请求:发生在页面生命周期之前,用户请求页时,ASP.NET将确定是否需要分析和编译页,从而确定是否开始页面的生命周期,或者是否可以在不运行页的情况下发送页面缓存以进行响应。
2、ASP.NET页面生命周期之开始:设置页属性,如:HttpContext以及其他属性;在此阶段,页面需要确定是回发请求还是新请求,并设置IsPostBack属性;设置页面的UICulture属性。
3、 ASP.NET页面生命周期之页面初始化:加载所有主题;控件生成,并设置UniqueID;
注:ViewState、ControlState中的值还未加载至控件;如果页面是回发,则回发数据也还未加载;故此时控件可以访问,但值可能出错。
4、ASP.NET页面生命周期之加载:如果当前请求是回发请求,则为控件加载ViewState和ControlState中的值。
5、ASP.NET页面生命周期之验证:调用所有验证程序控件的Validate方法,此方法将设置验证程序控件和页的IsValid属性。
6、ASP.NET页面生命周期之回发事件处理:如果请求是回发请求,则调用所有事件处理程序。
7、ASP.NET页面生命周期之呈现:首先对该页和所有控件进行保存视图状态,然后对每个控件调用Render方法,它会提供一个文本编写器,用于将控件的输入写入页的Response属性的OutputStream中。
8、ASP.NET页面生命周期之卸载:完成呈现,并已将页发送至客户端、准备丢弃该页后,调用卸载。将卸载属性如:Response和Request等等。
下面是ASP.NET编程模型中ASP.NET页面生命周期示图
ASP.NET编程模型中ASP.NET页面生命周期的简单架构介绍就向你介绍到这里,之后我们会继续详细介绍ASP.NET编程模型之ASP.NET页面生命周期的相关内容。
首先我们要弄清楚两个非常重要的概念:
1, worker
process(w3wp.exe). worker
process管理所有的来自客户端的请求并给出响应。它是IIS下asp.net应用程序的核心。
2,
application pool. 它是worker process的容器,IIS5及之前的IIS版本均没有application
pool的概念。每一个application pool对应着一个worker process,在IIS Metabase中维护着Application
Pool和worker process的Mapping。这就避免了IIS5中出现的worker
process(IIS5中是aspnet_wp.exe,同一时间只能运行一个该进程)崩溃,application全崩溃的局面。
客户端向IIS发出一个资源请求后发生了如下事情:
http://soft.chinabyte.com/database/285/12751285.shtml
http://www.jb51.net/article/27012.htm
http://www.jb51.net/article/46332.htm
=>
http://my.oschina.net/u/737297/blog/78367