<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當(dāng)前位置: 首頁 - 科技 - 知識(shí)百科 - 正文

        ASP.NET 頁生命周期概述(小結(jié))

        來源:懂視網(wǎng) 責(zé)編:小采 時(shí)間:2020-11-27 22:34:48
        文檔

        ASP.NET 頁生命周期概述(小結(jié))

        ASP.NET 頁生命周期概述(小結(jié)):ASP.NET 頁運(yùn)行時(shí),此頁將經(jīng)歷一個(gè)生命周期,在生命周期中將執(zhí)行一系列處理步驟。這些步驟包括初始化、實(shí)例化控件、還原和維護(hù)狀態(tài)、運(yùn)行事件處理程序代碼以及進(jìn)行呈現(xiàn)。了解頁的生命周期非常重要,這樣就能在合適的生命周期階段編寫代碼,以達(dá)到預(yù)期效果。此
        推薦度:
        導(dǎo)讀ASP.NET 頁生命周期概述(小結(jié)):ASP.NET 頁運(yùn)行時(shí),此頁將經(jīng)歷一個(gè)生命周期,在生命周期中將執(zhí)行一系列處理步驟。這些步驟包括初始化、實(shí)例化控件、還原和維護(hù)狀態(tài)、運(yùn)行事件處理程序代碼以及進(jìn)行呈現(xiàn)。了解頁的生命周期非常重要,這樣就能在合適的生命周期階段編寫代碼,以達(dá)到預(yù)期效果。此

        ASP.NET 頁運(yùn)行時(shí),此頁將經(jīng)歷一個(gè)生命周期,在生命周期中將執(zhí)行一系列處理步驟。這些步驟包括初始化、實(shí)例化控件、還原和維護(hù)狀態(tài)、運(yùn)行事件處理程序代碼以及進(jìn)行呈現(xiàn)。了解頁的生命周期非常重要,這樣就能在合適的生命周期階段編寫代碼,以達(dá)到預(yù)期效果。此外,如果開發(fā)自定義控件,則必須熟悉頁生命周期,從而正確地初始化控件,使用視圖狀態(tài)數(shù)據(jù)填充控件屬性以及運(yùn)行所有控件行為邏輯。(控件的生命周期基于頁的生命周期,但是頁引發(fā)的控件事件比單獨(dú)的 ASP.NET 頁中可用的事件多。)

        常規(guī)頁生命周期階段

        一般來說,頁要經(jīng)歷下表概述的各個(gè)階段。除了頁生命周期階段以外,還有在請(qǐng)求前后出現(xiàn)的應(yīng)用程序階段,但是這些階段并不特定于頁。有關(guān)更多信息,請(qǐng)參見 ASP.NET 應(yīng)用程序生命周期概述。

        階段說明

        頁請(qǐng)求

        頁請(qǐng)求發(fā)生在頁生命周期開始之前。用戶請(qǐng)求頁時(shí),ASP.NET 將確定是否需要分析和編譯頁(從而開始頁的生命周期),或者是否可以在不運(yùn)行頁的情況下發(fā)送頁的緩存版本以進(jìn)行響應(yīng)。

        開始

        在開始階段,將設(shè)置頁屬性,如 Request 和 Response。在此階段,頁還將確定請(qǐng)求是回發(fā)請(qǐng)求還是新請(qǐng)求,并設(shè)置 IsPostBack 屬性。此外,在開始階段期間,還將設(shè)置頁的 UICulture 屬性。

        頁初始化

        頁初始化期間,可以使用頁中的控件,并將設(shè)置每個(gè)控件的 UniqueID 屬性。此外,任何主題都將應(yīng)用于頁。如果當(dāng)前請(qǐng)求是回發(fā)請(qǐng)求,則回發(fā)數(shù)據(jù)尚未加載,并且控件屬性值尚未還原為視圖狀態(tài)中的值。

        加載

        加載期間,如果當(dāng)前請(qǐng)求是回發(fā)請(qǐng)求,則將使用從視圖狀態(tài)和控件狀態(tài)恢復(fù)的信息加載控件屬性。

        驗(yàn)證

        在驗(yàn)證期間,將調(diào)用所有驗(yàn)證程序控件的 Validate 方法,此方法將設(shè)置各個(gè)驗(yàn)證程序控件和頁的 IsValid 屬性。

        回發(fā)事件處理

        如果請(qǐng)求是回發(fā)請(qǐng)求,則將調(diào)用所有事件處理程序。

        呈現(xiàn)

        在呈現(xiàn)期間,視圖狀態(tài)將被保存到頁,然后頁將調(diào)用每個(gè)控件,以將其呈現(xiàn)的輸出提供給頁的 Response 屬性的 OutputStream。

        卸載

        完全呈現(xiàn)頁、將頁發(fā)送至客戶端并準(zhǔn)備丟棄時(shí),將調(diào)用卸載。此時(shí),將卸載頁屬性(如 Response 和 Request)并執(zhí)行清理。

        生命周期事件

        在頁生命周期的每個(gè)階段中,頁將引發(fā)可運(yùn)行您自己的代碼進(jìn)行處理的事件。對(duì)于控件事件,通過以聲明方式使用屬性(如  )或以使用代碼的方式,均可將事件處理程序綁定到事件。

        頁還支持自動(dòng)事件連接,即,ASP.NET 將尋找具有特定名稱的方法,并在引發(fā)特定事件時(shí)自動(dòng)運(yùn)行這些方法。如果@ Page 指令的 AutoEventWireup 屬性設(shè)置為 true(或者如果未定義該屬性,因?yàn)槟J(rèn)情況下為true),頁事件將自動(dòng)綁定至使用 Page_event 命名約定的方法,如 Page_Load 和 Page_Init。有關(guān)自動(dòng)事件連接的更多信息,請(qǐng)參見ASP.NET Web 服務(wù)器控件事件模型。

        下表列出了最常用的頁生命周期事件。實(shí)際的事件比列出的事件要多。但是,它們不用于大多數(shù)頁處理方案。而是主要由 ASP.NET 網(wǎng)頁上的服務(wù)器控件使用,以初始化和呈現(xiàn)它們本身。如果要編寫自己的 ASP.NET 服務(wù)器控件,則需要詳細(xì)了解這些階段。有關(guān)創(chuàng)建自定義控件的信息,請(qǐng)參見開發(fā)自定義 ASP.NET 服務(wù)器控件。

        頁事件典型使用

        Page_PreInit

      1. 使用 IsPostBack 屬性確定是否是第一次處理該頁。

      2. 創(chuàng)建或重新創(chuàng)建動(dòng)態(tài)控件。

      3. 動(dòng)態(tài)設(shè)置主控頁。

      4. 動(dòng)態(tài)設(shè)置 Theme 屬性。

      5. 讀取或設(shè)置配置文件屬性值。

        注意如果請(qǐng)求是回發(fā)請(qǐng)求,則控件的值尚未從視圖狀態(tài)還原。如果在此階段設(shè)置控件屬性,則其值可能會(huì)在下一階段被改寫。

      6. Page_Init

      7. 讀取或初始化控件屬性。

      8. Page_Load

      9. 讀取和更新控件屬性。

      10. Control events

        執(zhí)行特定于應(yīng)用程序的處理:

      11. 如果頁包含驗(yàn)證程序控件,請(qǐng)?jiān)趫?zhí)行任何處理之前檢查頁和各個(gè)驗(yàn)證控件的 IsValid 屬性。

      12. 處理特定事件,如 Button 控件的 Click 事件。

      13. Page_PreRender

      14. 對(duì)頁的內(nèi)容進(jìn)行最后更改。

      15. Page_Unload

        執(zhí)行最后的清理工作,可能包括:

      16. 關(guān)閉打開的文件和數(shù)據(jù)庫連接。

      17. 完成日志記錄或其他特定于請(qǐng)求的任務(wù)。

        注意在卸載階段,頁及其控件已被呈現(xiàn),因此無法對(duì)響應(yīng)流做進(jìn)一步更改。如果嘗試調(diào)用方法(如 Response.Write 方法),則該頁將引發(fā)異常。

      18. 其他的頁生命周期注意事項(xiàng)

        請(qǐng)注意有關(guān)頁生命周期的以下附加信息:

      19. 各個(gè) ASP.NET 服務(wù)器控件都有自己的生命周期,該生命周期與頁生命周期類似。例如,在相應(yīng)的頁事件期間將調(diào)用控件的 Init 和 Load 方法。如果頁上包含控件,則將首先調(diào)用控件的 Init 方法,然后再調(diào)用頁的 Init 方法。但是,將在調(diào)用控件的 Load 方法之前先調(diào)用頁的 Load 方法。

      20. 通過處理控件的事件,可以自定義控件的外觀或內(nèi)容。例如,所有的控件都將引發(fā) Init、Load 和 Unload 事件,但是頁開發(fā)人員通常不處理這些事件。而是通常處理特定于控件的事件,如 Button 控件的Click 事件和 ListBox 控件的 SelectedIndexChanged 事件。在某些情況下,可能也需處理控件的 DataBinding 或 DataBound 事件。有關(guān)更多信息,請(qǐng)參見各個(gè)控件的類參考主題以及開發(fā)自定義 ASP.NET 服務(wù)器控件。

      21. 除了處理由頁引發(fā)的事件以外,還可以重寫頁的基類中的方法。例如,可以重寫頁的 InitializeCulture 方法,以便動(dòng)態(tài)設(shè)置區(qū)域性信息。注意,在使用 Page_event 語法創(chuàng)建事件處理程序時(shí),將隱式調(diào)用基實(shí)現(xiàn),因此無需在方法中調(diào)用它。例如,無論是否創(chuàng)建 Page_Load 方法,始終都會(huì)調(diào)用頁基類的  方法。但是,如果使用 override 關(guān)鍵字(在 Visual Basic 中為 Overrides)重寫頁的   方法,則必須顯式調(diào)用基方法。例如,如果在頁中重寫   方法,則必須調(diào)用  .Load(在 Visual Basic 中為 My .Load)以運(yùn)行基實(shí)現(xiàn)。

      22. 聲明:本網(wǎng)頁內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        ASP.NET 頁生命周期概述(小結(jié))

        ASP.NET 頁生命周期概述(小結(jié)):ASP.NET 頁運(yùn)行時(shí),此頁將經(jīng)歷一個(gè)生命周期,在生命周期中將執(zhí)行一系列處理步驟。這些步驟包括初始化、實(shí)例化控件、還原和維護(hù)狀態(tài)、運(yùn)行事件處理程序代碼以及進(jìn)行呈現(xiàn)。了解頁的生命周期非常重要,這樣就能在合適的生命周期階段編寫代碼,以達(dá)到預(yù)期效果。此
        推薦度:
        標(biāo)簽: as asp 生命周期
        • 熱門焦點(diǎn)

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 国产免费一区二区三区在线观看 | www一区二区www免费| 午夜私人影院免费体验区| 亚洲av日韩av无码av| 一二三四在线播放免费观看中文版视频 | 亚洲AV无码专区国产乱码电影| 在线免费观看伊人三级电影| 亚洲中文字幕无码日韩| 久久国产乱子免费精品| 337p日本欧洲亚洲大胆艺术| 四虎免费影院ww4164h| 亚洲 日韩经典 中文字幕| 韩国18福利视频免费观看| 国产成人高清亚洲一区久久| 亚洲日本韩国在线| 成全在线观看免费观看大全 | 久久久久久a亚洲欧洲aⅴ| 欧洲人成在线免费| 中文字幕亚洲综合小综合在线| 四虎成人免费观看在线网址| 大桥未久亚洲无av码在线| 国产成人亚洲精品狼色在线 | 欧美三级在线电影免费| 老司机免费午夜精品视频| 中文字幕在线亚洲精品| 精品成在人线AV无码免费看 | 日韩成全视频观看免费观看高清| 国产成人亚洲综合无| 国产AV无码专区亚洲AV男同| 久久久久久精品免费免费自慰| 亚洲精品乱码久久久久蜜桃| 亚洲午夜成人精品电影在线观看| 最近免费中文字幕高清大全 | 中文字幕无码日韩专区免费| 久久亚洲精品成人AV| 国产三级电影免费观看| 久久免费线看线看| 亚洲国产精品99久久久久久| 国产亚洲精品福利在线无卡一| 日韩免费一区二区三区在线播放| 猫咪www免费人成网站|