ASP.NET Web Pages - 全局页面


本章では、グローバルページのAppStartとPageStartを紹介します。


Web起動の前:_AppStart

ほとんどのサーバーサイドコードは、個々のWebページ内に記述されます。例えば、Webページに入力フォームが含まれている場合、そのWebページには通常、フォームデータを読み取るためのサーバーサイドコードが含まれます。

ただし、サイトのルートディレクトリに _AppStart という名前のページを作成することで、サイトの起動前にコードを実行させることができます。このページが存在する場合、ASP.NET はサイト内の他のページが要求されたときに、このページを優先的に実行します。

_AppStart の典型的な用途は、起動コードとグローバル値(カウンタやグローバル名など)の初期化です。

注释 1:_AppStart のファイル拡張子は、お使いのWebページと一致させてください。例えば:_AppStart.cshtml。

注释 2:_AppStart にはアンダースコア接頭辞が付いています。したがって、これらのファイルは直接閲覧することはできません。


各ページの前に:_PageStart

_AppStart がサイトの起動前に実行されるのと同様に、各フォルダー内の任意のページの前に実行されるコードを記述することができます。

Webサイト内の各フォルダーに対して、_PageStart という名前のファイルを追加できます。

_PageStart の典型的な用途は、フォルダー内のすべてのページにレイアウトページを設定することや、ページを実行する前にユーザーがログインしているかどうかを確認することです。


どのように機能するのですか?

次の図は、その仕組みを示しています:

PageStart

要求を受け取ると、ASP.NET はまず _AppStart が存在するかどうかを確認します。_AppStart が存在し、それがサイトが受け取った最初の要求である場合、_AppStart が実行されます。

次に、ASP.NET は _PageStart が存在するかどうかを確認します。_PageStart が存在する場合、他の要求されたページが実行される前に _PageStart が実行されます。

_PageStart 内で RunPage() を呼び出して、要求されたページが実行される位置を指定できます。それ以外の場合、既定では、要求されたページは _PageStart の実行後に実行されます。


其他扩展