ASP.NET Web Pages - 全域性頁面
本章介紹 AppStart 和 PageStart 全域性頁面。
網站啟動前:_AppStart
大多數伺服器端程式碼都寫在單獨的網頁中。例如,如果一個網頁包含一個輸入表單,該網頁通常會包含用於讀取資料的伺服器程式碼。
然而,透過在網站根目錄下建立一個名為 _AppStart 的頁面,您可以編寫在網站啟動前執行的啟動程式碼。如果此頁面存在,ASP.NET 將在使用者首次請求網站中的任何頁面時執行它。
_AppStart 的典型用途是執行啟動程式碼和初始化全域性值,例如計數器和全域性名稱。
注意 1:_AppStart 應與您的網頁具有相同的副檔名,例如:_AppStart.cshtml.
注意 2:_AppStart 字首帶有一個下劃線。因此,這些檔案不能直接瀏覽。
每個頁面前:_PageStart
就像 _AppStart 在網站啟動前執行一樣,您可以編寫在每個資料夾中的任何頁面執行前執行的程式碼。
對於您網站的每個資料夾,都可以新增一個名為 _PageStart 的檔案。
_PageStart 的典型用途是為資料夾中的所有頁面設定佈局頁面,或在執行頁面之前檢查使用者是否已登入。
它是如何工作的?
以下圖表顯示了其工作原理
當收到請求時,ASP.NET 會檢查 _AppStart 是否存在。如果存在,並且這是網站的第一次請求,則 _AppStart 會執行。
然後,ASP.NET 會檢查 _PageStart 是否存在。如果存在,則 _PageStart 會在請求的頁面之前執行。
如果您在 _PageStart 中包含對 RunPage() 的呼叫,則指定請求的頁面在哪裡執行。如果不是,則 _PageStart 在請求的頁面之前執行。