zoukankan      html  css  js  c++  java
  • asp.net Page lifeCycle

    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

    先页面、在对于每个控件

  • 相关阅读:
    软件设计的哲学:第十七章 一致性
    软件设计的哲学:第十六章 修改现有代码
    软件设计的哲学: 第十五章 先写注释
    软件设计的哲学:第十四章 选个好名字
    软件设计的哲学:第十三章 注释应该描述代码中隐藏的内容
    软件设计的哲学:第二十章 为什么要写注释
    软件设计的哲学:第十一章 两次设计
    软件设计的哲学: 第十章 定义不存在错误
    软件设计的哲学: 第九章 合并还是分解
    软件设计的哲学:第八章 降低复杂性
  • 原文地址:https://www.cnblogs.com/jfliuyun/p/1502130.html
Copyright © 2011-2022 走看看