ASP.NET 教程login
ASP.NET 教程
作者:php.cn  更新時間:2022-04-11 14:18:18

Web Pages 全域


ASP.NET Web Pages - 全域頁面


#本章介紹全域頁面 AppStart 和 PageStart。


在 Web 啟動之前:_AppStart

大多數的伺服器端程式碼是寫在個人網頁裡邊。例如,如果網頁中包含輸入表單,那麼這個網頁通常包含用來讀取表單資料的伺服器端程式碼。

然而,您可以透過在您的網站根目錄下建立一個名為 _AppStart 的頁面,這樣在網站啟動之前可以先啟動程式碼執行。如果存在此頁面,ASP.NET 會在網站中其它頁面被要求時,優先執行這個頁面。

_AppStart 的典型用途是啟動程式碼和初始化全域數值(例如計數器和全域名稱)。

註解 1:_AppStart 的檔案副檔名與您的網頁一致,例如:_AppStart.cshtml。

註解 2:_AppStart 有底線前綴。因此,這些文件不可以直接瀏覽。


在每一個頁面之前:_PageStart

就像_AppStart 在您的網站啟動之前就運行一樣,您可以編寫在每個資料夾中的任何頁面之前運行的代碼。

對於您網站中的每個資料夾,您可以新增一個名為 _PageStart 的檔案。

_PageStart 的典型用途是為一個資料夾中的所有頁面設定佈局頁面,或在執行某個頁面之前檢查使用者是否已登入。


它是如何運作的?

下圖顯示了它是如何運作的:

pic_webpages_pagestart.jpg

當接收到一個請求時,ASP.NET 會先檢查 _AppStart 是否存在。 如果 _AppStart 存在且這是網站接收到的第一個請求,則執行 _AppStart。

然後 ASP.NET 檢查 _PageStart 是否存在。如果 _PageStart 存在,則在其它被要求的頁面運行之前先執行 _PageStart。

您可以在 _PageStart 中呼叫 RunPage() 來指定被要求頁面的運作位置。否則,預設情況下,被請求頁面是在 _PageStart 運作之後才運作。


PHP中文網