asp.net 页面生命周期(Page lifeCycle)

原创 2007年09月19日 23:37:00

刚开始研究.net,发现.net2.0中还是有不少bug,不知道3.5会怎样。

研究了一会,有点成果,记下一笔吧

asp.net运用的是基于事件的处理模式,page lifecycle就是指页面(page)和控件按一定的次序发生。

1、Detemine postback mode    根据在request里的viewstate对IsPostBack属性赋值

2、PreInit                                        在页面开始初始化时发生,可以动态设置master page 和theme

3、Initialize themes                       theme初始化

4、Apply master page                   添加master page

先对于每一个控件 然后页面

              5、Get Control Adapter          开发者可以用Control adapter 更改服务器控件,而这些Control Adapter都是在App_Browsers文件夹中定义

              6、Apply skin                            添加控件定一的皮肤

              7、Init                                         控件生成,现在控件还不能被访问,ViewState中的信息还不能被访问

              8 、Track View State                跟踪ViewState中的值

9、InitComplete                              在页面(Page)初始化完成后触发,所有在页面定义的控件已被初始化,然而ViewState中的值还不能使用

if Ispostback

         10、  Page state is loaded from presistence medium       读取ViewState并装载

          11、load  Control state                                                             读取ControlState并装载

          12、load  View State (page then control)                         读取并装载与page和control有关的ViewState

           13、Process post data                                                             装载post过来的数据

14、preLoad                                               发生在ViewState存储后Load事件发生前

15、Load(page,then controls)        Load事件

if IsPostBack

            16、Process Post Data                          装载Post过来的数据,为了在Load事件中装载的控件

             17、Control Change Events                 所有的Control Change Event 触发 (TextChanged)

             18、Control Postback Events              所有的Control Postback Event 触发(button click)

19、LoadComplete                     所有的 Load事件发生后触发

20、Prepare Callback                 如果有异步事件定义时触发

先页面 ,之后对与每个控件

            21、Create Child Controls            控件创建子控件

            if  data binding

                        22、DataBinding                  若控件有DataSourceID属性被设置是触发

                        23、Data Bind                     

                        24、DataBound

              25、PreRender                          准备Render

26、Execute asynchronous tasks              处理异步事件(PageAsyncTask)

27、Render Callback                            翻译 client script callback

28、PreRenderComplete                    所有控件和页面已经准备完成

先Page,然后对于每个控件

              29、Save Control State                  

              30、Save View State

31、Save Page State To Presistence Medium

32、SaveStateComplete

先页面,再对与每个控件

          33、Render

先页面、在对于每个控件

          34、UnLoad

 

先写到这里吧
 

asp.net中page对象生命周期和各事件执行顺序

    以前写jsp时 用户输入页面是一页,处理用户输入的又是是一个页面.因为http的无状态性我们只能够通过get和post方式向服务器发送请求的数据.可是到了asp.net我们不需要为接收用户输入...
  • angel_bear
  • angel_bear
  • 2006-10-04 14:26:00
  • 3043

ASP.NET 2.0 Page LifeCycle

URL:http://www.eggheadcafe.com/articles/20051227.aspI was searching the web for some information on ...
  • coofucoo
  • coofucoo
  • 2007-05-09 09:49:00
  • 1408

IOS开发之界面生命周期(view lifecycle)

init NSObject的类实现一个名为init方法。这是你需要发送到NSObject的实例初始化初始化消息。因为init是主要的(或在这种情况下,只有)NSObject的初始化方法,我们称之为t...
  • xdrt81y
  • xdrt81y
  • 2012-12-03 10:10:22
  • 5902

ASP.NET最常用的页面生命周期事件

PreInit:在页生命周期的早期阶段可以访问的事件。在PreInit事件后,将加载个性化信息和页主题。 Init:在所有的控件都已初始化,且已应用所有外观设置后引发。使用该事件来读取或初始化控...
  • ahao214
  • ahao214
  • 2016-09-01 21:16:10
  • 419

asp.net web 页面生命周期

每次客户端请求都会创建页面实例,它的执行使自身及其包含的控件经历页面生命周期的各个阶段。页面的执行起始于HTTP运行库调用ProcessRequest时,该方法将启动页面并控制它的生命周期。生命周期由...
  • lqh4188
  • lqh4188
  • 2013-01-23 15:06:07
  • 2197

WebForm页面生命周期及asp.net运行机制

 1.先上几张原理图着重理解:          现在针对第四副图原理进行解析: 流程: 1.浏览器发送请求 2.服务器软件(IIS)接收,它最终的目的就是为了向...
  • mss359681091
  • mss359681091
  • 2016-07-11 17:36:32
  • 2092

Asp.net Web Form开发的页面生命周期模型

过程:PreInit、Init、PreLoad、Load、LoadComplete、PreRender、Render、Unload 执行的事件: OnPreInit: 用来检查IsPostBack...
  • yibintang
  • yibintang
  • 2013-01-21 21:55:18
  • 562

Asp.Net底层解析(三)——ASPX页面的生命周期详解

前言:个人认为,对于页面生命周期的理解是开发人员在ASP.NET领域做好做深的前提。当然,因为微软已经将ASP.NET封装得很简单了,所以对于只有基本html&javascript的初学者来说也很容易...
  • mlcactus
  • mlcactus
  • 2013-02-01 23:21:20
  • 2774

Asp.net页面生命周期中的十个事件

介  绍Asp.net是微软.Net战略的一个组成部分。它相对以前的Asp有了很大的发展,引入了许多的新机制。本文就Asp.net页面的生命周期向大家做一个初步的介绍,以期能起到指导大家更好、更灵活地...
  • sscrazy
  • sscrazy
  • 2010-10-13 18:12:00
  • 1698
收藏助手
不良信息举报
您举报文章:asp.net 页面生命周期(Page lifeCycle)
举报原因:
原因补充:

(最多只允许输入30个字)