首頁  >  文章  >  後端開發  >  Web Page的生命週期詳解

Web Page的生命週期詳解

巴扎黑
巴扎黑原創
2016-12-20 16:33:561610瀏覽

了解ASP.NET Web Page的生命週期對於一個做WEB開發的工程師來說很有必要,尤其是用於編寫自己的control的時候。

ASP.NET Web Page的生命週期可以基本分為以下幾個階段: 

1.  Page request 
     本頁面被請求時發生在web page生命週期之前, 當有一個頁面被請求時,ASP.NET引擎要判斷這個頁面是否需要經過編譯或直接透過此頁面的緩衝版本直接發給請求者。 

2.  Start 
     在這一階段,Page的Request,Response,IsPostBack,UICulture 屬性被適當設定。

3.  Page initialization 
     在此階段,每一個control的UniqueID屬性被設置,頁面的主題也被應用,如果此頁面是回傳頁面,即Page的IsPostBack屬性為true,那麼頁面裡各個的新的值和ViewState還沒有在此階段被恢復。 

4.  Load 
     在此階段,如果頁面是回傳頁面,擇頁裡各個控制項的新的值和ViewState將被恢復或設定。 

5.  Validation 
     在此階段,頁面中驗證控制項會呼叫自己的Validate方法進行驗證以便設定自己的IsValid屬性,因為驗證控制項是在客戶端和伺服器端都要進行驗證的。 
     
6.  Postback event handling 
     在此階段所有的委託事件將被調用,而我們所有的事件處理代碼是在此時被調用的。

7.  Rendering 
     在此階段Page呼叫每個控制項的Render方法將各個控制項對應的html文字流寫到Response的OutputStream屬性中,在此階段之前,每個控制項將再次儲存各自的ViewState,因此我們還是有最後一次機會在Page的PreRender方法中改變控制項的ViewState屬性的。 

8.  Unload 
     在此階段,當初為Page及每個控制建立的實體都將被刪除,資源被釋放。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn