程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> .NET實例教程 >> aspx頁面生存周期

aspx頁面生存周期

編輯:.NET實例教程
在頁面第一次被加載期間,生命周期包含以下步驟:

1. 運行構造函數。對於頁面和頁面上的控件,這是生命周期的第一步。

2. 確定回傳模式。是第一次加載,或者是回傳,還是跨頁回傳?

3. 預初始化。為了在第一個頁面初始化之前確定目標設備,這已不是必須的。PreInit是生命周期的第一個事件,該事件使用OnPreInit方法處理事件。

4. 加載並初始化個性化主題。

5. 初始化。在初始化階段構建控件樹。在這個階段可以為請求初始化任何職。通過處理Init事件的Oninit方法可以實現對初始化階段的修改。

6. 預加載。在回傳數據被加載進控件前發生。通過處理PreLoad事件的OnPreLoad方法可以實現對該階段的修改。

7. 加載。在此階段,用戶代碼運行,表單控件顯示客戶端數據。試圖狀態數據可用,還可以訪問頁面控件層次結構內的控件。通過處理Load事件的OnLoad方法可以實現對加載階段的修改。

8. 加載完成。完成加載過程。通過處理LoadComplete事件的OnLoadComplete方法可以實現對該階段的修改。

9. 預呈現。這裡是輸出呈現千的一個階段。通過處理PreRender事件的OnPreRender方法可以實現對該階段的修改。

10. 保存狀態。個性化,控件,視圖還有頁面狀態信息都被保存。

11. 呈現。在此階段,葉面及其空間輸出呈現為HTML,可以使用Render方法進行重寫。在Render方法內,如果有必要的話,可以調用CreatChildControls方法實現在空間樹內創建並初始化服務器控件。

12. 卸載。這是生命周期的租後階段。這個階段提供了一個機會,以便完成最終的清除工作,並釋放對任何耗費資源的引用,例如,數據庫聯接。這對於規模是非常重要的。可以通過使用OnUnload方法來修改。

在回傳期間,生命周期和第一次加載時相同,以下列舉幾點例外:

1. 加載狀態。初始化完成後,加載頁面和控件狀態,從頁面上的一個隱藏變量加載視圖狀態。

2. 處理回傳數據。在這個階段,通過Post方法來處理發送到服務器的數據。通過LoadPostData方法可以實現對與需要回傳的視圖狀態的任何更新。

3. 預加載和加載。何第一次加載相同。

4. 發送回傳變化通知。如果當前狀態較先前狀態發生了任何變化。就會通過RaiseChangedEvents方法引起變化事件。引發的順序和空間在控件樹種的順序相同。

5. 處理回傳變化通知。確切的說是用戶行為導致了回傳。在所有變化事件得以處理後,將處理用戶行為,導致回傳的最初客戶端事件在RaisePostBackEvent方法中進行處理。

6. 加載完成。從這裡開始,都和第一次加載相同。

注意:第一次加載,Request Type為GET;否自Request Type為POST。


  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved