Web Page的生命週期詳解

來源:互聯網
上載者:User
瞭解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及每個控制項建立的實體都將被刪除,資源被釋放。
  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.