pages 要素 (ASP.NET 設定スキーマ)

構成ファイルのスコープ内にあるページおよびコントロールについて、ASP.NET ディレクティブなどのページ固有の構成設定をグローバル定義します。

<pages     
   asyncTimeout="number"
   autoEventWireup="[True|False]"
   buffer="[True|False]"
   clientIDMode="[AutoID|Predictable|Static]"
   compilationMode="[Always|Auto|Never]" 
   controlRenderingCompatibilityVersion="[3.5|4.0]"
   enableEventValidation="[True|False]"
   enableSessionState="[True|False|ReadOnly]"
   enableViewState="[True|False]"
   enableViewStateMac="[True|False]"
   maintainScrollPositionOnPostBack="[True|False]" 
   masterPageFile="file path" 
   maxPageStateFieldLength="number" 
   pageBaseType="typename, assembly"
   pageParserFilterType="string" 
   smartNavigation="[True|False]"
   styleSheetTheme="string"
   theme="string"
   userControlBaseType="typename"
   validateRequest="[True|False]"
   viewStateEncryptionMode="[Always|Auto|Never]" 
>
   <controls>...</controls>
   <namespaces>...</namespaces>
   <tagMapping>...</tagMapping>
   <ignoreDeviceFilters>...</ignoreDeviceFilters>
</pages>

属性および要素

以降のセクションでは、属性、子要素、および親要素について説明します。

属性

属性

説明

asyncTimeout

省略可能な TimeSpan 型の属性です。

非同期処理時に非同期ハンドラーの完了を待機する時間を秒単位で指定します。

この属性は .NET Framework Version 2.0 で新たに追加されました。

既定値は "0:00:45" (45 秒) です。

autoEventWireup

省略可能な Boolean 型の属性です。

ページ イベントを自動的に有効にするかどうかを指定します。 これは、自動イベント ワイヤアップが発生するかどうか、つまりシステムが特定のシグネチャ (Page_Load など) を持つメソッドを自動的にアタッチするかどうかという意味です。 詳細については、「ASP.NET Web サーバー コントロールのイベント モデル」を参照してください。

既定値は、True です。

buffer

省略可能な Boolean 型の属性です。

URL リソースが応答バッファーを使用するかどうかを指定します。

既定値は、True です。

clientIDMode

コントロールの ClientID 値を生成するために使用するアルゴリズムを指定します。 既定値は Predictable です。 コントロールの既定値は、Inherit です。 したがって、ページ内のコントロールの既定のアルゴリズムは、ページの ClientIDMode の設定によって決定されます。 ページの @ Page ディレクティブ、またはユーザー コントロールの @ Control 要素で、異なる既定値を設定できます。 アルゴリズムの詳細については、「ClientIDMode」および「ASP.NET Web サーバー コントロールの識別」を参照してください。

compilationMode

省略可能な CompilationMode 型の属性です。

ASP.NET のページまたはコントロールを実行時にコンパイルするかどうかを指定します。

compilationMode 属性は .NET Framework 2.0 で新たに追加されました。 この属性には、次のいずれかの値を指定できます。 既定値は、Always です。

値説明
Always ページが常にコンパイルされます。
Auto 可能な場合は、ページをコンパイルしません。
Never ページまたはコントロールを動的にコンパイルしません。 ASP.NET では、コンパイルを必要とするスクリプト ブロックまたはコード コンストラクターがページ内に含まれる場合にはエラーが返され、ページは実行されません。

controlRenderingCompatibilityVersion

コントロールによる HTML のレンダリングが、旧バージョンの ASP.NET と同様の方法に従うか、現在のバージョンで指定されている方法に従うかを指定します。

メモメモ
controlRenderingCompatibilityVersion は、ASP.NET 4 で新たに導入されました。これを現在のバージョン番号に設定すると、設定しない場合と同じ結果になります。どちらの場合も、コントロールは現在のバージョン用の設計に従って HTML をレンダリングします。この属性で設定できる最小バージョンは 3.5 です。

詳細については、PagesSection.ControlRenderingCompatibilityVersion および Control.RenderingCompatibility の各プロパティのトピックを参照してください。

enableEventValidation

ページとコントロールがポストバック イベントとコールバック イベントを検証するかどうかを指定します。 既定値は、True です。

enableSessionState

省略可能な String 型の属性です。

構成ファイルのスコープ内にあるリソースに対するセッション状態要件を指定します。

enableSessionState 属性には、次のいずれかの値を指定できます。 既定値は、True です。

値説明
False セッション状態が無効であることを示します。
ReadOnly セッション状態が書き込み可能ではないことを示します。
True セッション状態が有効であることを示します。

enableViewState

省略可能な Boolean 型の属性です。

ビューステートが有効になり、ページ要求間で維持されているかどうかを指定します。

既定値は、True です。

enableViewStateMac

省略可能な Boolean 型の属性です。

クライアントからページがポストバックされたときに、ASP.NET がそのページのビューステートで MAC (Message Authentication Code) を実行するかどうかを指定します。 True の場合は、暗号化されたビューステートが、クライアントで改ざんされていないかどうかを検証するために確認されます。

既定値は、True です。

maintainScrollPositionOnPostBack

省略可能な Boolean 型の属性です。

ページがサーバーにポストバックされるときに、クライアント ブラウザーの同じ位置にユーザーを返すかどうかを指定します。 False の場合、ユーザーはポストバック時にページの一番上に返されます。

この属性は .NET Framework 2.0 で新たに追加されました。

既定値は、False です。

masterPageFile

省略可能な String 型の属性です。

ローカル構成ファイルに対するマスター ページの相対パスを指定します。 masterPageFile 属性が True に設定されたページには、Content コントロールが最上位のコントロールとして含まれる必要があります。

この属性は .NET Framework 2.0 で新たに追加されました。

既定値は、空の文字列 ("") です。

maxPageStateFieldLength

省略可能な Int32 型の属性です。

ページの状態フィールドに入力できる文字列長の上限を指定します。 正数に設定されている場合、クライアント ブラウザーに送信されるビューステート フィールドはチャンクに分割され、各チャンクは maxPageStateFieldLength 属性に指定されたサイズよりも小さくなります。 負数に設定すると、ビューステート フィールドはチャンクに分割されません。

この属性は .NET Framework 2.0 で新たに追加されました。

既定値は、"-1" です。

pageBaseType

省略可能な String 型の属性です。

ページがスタンドアロン専用の場合に使用する基本型を指定します。 これは、スタンドアロン ファイルの inherits 属性によってオーバーライドされます。

既定値は "System.Web.UI.Page" です。

pageParserFilterType

省略可能な String 型の属性です。

ページ内で項目が許可されているかどうかを解析時に確認するために ASP.NET パーサーが使用するフィルターの種類の名前を指定します。 フィルターは、PageParserFilter クラスから派生する必要があります。

この属性は .NET Framework 2.0 で新たに追加されました。

既定値は、空の文字列 ("") です。

smartNavigation

省略可能な Boolean 型の属性です。

スマート ナビゲーションが有効かどうかを指定します。 スマート ナビゲーションには、Microsoft Internet Explorer のバージョン 5.5 以降が必要です。 スマート ナビゲーションを有効にすると、次の利点があります。

  • ナビゲーションの点滅がなくなる。

  • スクロール位置がページ間で保持される。

  • 要素のフォーカスがページ間で保持される。

  • ページの最終状態だけがブラウザーの履歴に保持される。

この属性は .NET Framework 2.0 で新たに追加されましたが、使用を推奨していません。maintainScrollPositionOnPostBack 属性を優先して使用してください。

既定値は、False です。

styleSheetTheme

省略可能な String 型の属性です。

テーマに適用するために使用される "テーマ" フォルダーの名前をコントロールの宣言の前に指定します。一方、テーマ属性は、適用するテーマを、コントロールの宣言の後で定義します。

この属性は .NET Framework 2.0 で新たに追加されました。

既定値は、空の文字列 ("") です。

theme

省略可能な String 型の属性です。

構成ファイルのスコープ内にあるページに使用するテーマの名前を指定します。 指定したテーマは、アプリケーションまたはグローバル テーマとして存在する必要があります。 テーマが存在しない場合、HttpException 例外がスローされます。

この属性は .NET Framework 2.0 で新たに追加されました。

既定値は、空の文字列 ("") です。

userControlBaseType

省略可能な String 型の属性です。

ページがスタンドアロン専用の場合に使用する基本型を指定します。

既定値は "System.Web.UI.UserControl" です。

validateRequest

省略可能な Boolean 型の属性です。

ブラウザーからのすべての入力データから危険性のあるデータを調べるように指定します。 True の場合は、すべての入力データを危険性のある値のリストと比較することによって、検証を実行することを要求します。 一致した場合は、HttpRequestValidationException 例外が発生します。

既定値は、True です。

viewStateEncryptionMode

省略可能な ViewStateEncryptionMode 型の属性です。

ビューステートの暗号化モードを指定します。 ViewStateEncryptionMode プロパティは、構成ファイル内に設定されたこの属性をオーバーライドします。

この属性には、次のいずれかの値を指定できます。

値説明
Always ビューステートを常に暗号化します。
Auto コントロールが要求した場合に、ビューステートを暗号化します。
Never コントロールが要求した場合でも、ビューステートを暗号化しません。

この属性は .NET Framework 2.0 で新たに追加されました。

既定値は、Auto です。

子要素

要素

説明

controls

レジスタ ディレクティブのコレクションおよびタグ プレフィックスが存在する名前空間を定義します。

namespaces

アセンブリのプリコンパイル時に使用するインポート ディレクティブのコレクションを定義します。

tagMapping

コンパイル時に他のタグの種類にリマップされるタグの種類のコレクションを定義します。

ignoreDeviceFilters

ページをレンダリングするときにブラウザーが無視する必要のあるデバイス要素のコレクションを定義します。 詳細については、「IgnoreDeviceFilters」を参照してください。

親要素

要素

説明

configuration

共通言語ランタイムおよび .NET Framework ベースのアプリケーションで使用されるすべての構成ファイルで必要なルート要素です。

system.web

構成ファイルの ASP.NET 構成設定のルート要素を指定します。ASP.NET Web アプリケーションを構成する構成要素やアプリケーションの動作を制御する構成要素が含まれます。

解説

pages 要素は、ページ固有の構成設定を定義します。 この構成セクションでは、構成ファイルのスコープ内にあるすべてのページとコントロールに対して、特定の ASP.NET ページ ディレクティブとコントロール ディレクティブをグローバルに設定できます。 これには、ページおよびユーザー コントロールのコンパイラが ASP.NET Web フォーム ページ (.aspx) ファイルおよびユーザー コントロール (.ascx) ファイルを処理するときに使用する設定を指定する、次のページ レベル ディレクティブが含まれます。

pages 要素は、tagMapping 要素を介して、実行時にタグの種類を他のタグの種類に割り当てることもできます。

メモメモ

@ Page ディレクティブをマスター ページに追加しても、マスター ページに依存するページの同じディレクティブの宣言を使用できません。代わりに、pages 構成要素を使用して、ページ ディレクティブをグローバル定義してください。

既定の構成

次の既定の pages 要素は、Machine.config ファイルまたはルート Web.config ファイルで明示的には構成されていません。 ただし、これはアプリケーションにより返される既定の構成です。 名前空間とコントロールは、ルート Web.config ファイル内で追加されます。

<pages 
   buffer="true" 
   clientIDMode="AutoID" 
   enableSessionState="true" 
   enableViewState="true" 
   enableViewStateMac="true" 
   smartNavigation="false" 
   autoEventWireup="true" 
   pageBaseType="System.Web.UI.Page" 
   userControlBaseType="System.Web.UI.UserControl" 
   validateRequest="true" 
   masterPageFile="" 
   theme="" 
   styleSheetTheme="" 
   maxPageStateFieldLength="-1" 
   compilationMode="Always" 
   pageParserFilterType="" 
   viewStateEncryptionMode="Auto" 
   maintainScrollPositionOnPostBack="false" 
   asyncTimeout="45"
>
   <namespaces>
      <clear />
   </namespaces>
   <tagMapping>
      <clear />
   </tagMapping>
</pages>

使用例

複数のページ構成設定を指定する方法を次のコード例に示します。

<configuration>
   <system.web>
      <pages buffer="true"
         enableSessionState="true"
         autoEventWireup="true"
         maintainScrollPositionOnPostBack="true"
         masterPageFile = "~/Masters/Page1.master" />
  </system.web>
</configuration>

要素情報

構成セクション ハンドラー

PagesSection

構成メンバー

Pages

Page

構成できる場所

Machine.config

ルート レベルの Web.config

アプリケーション レベルの Web.config

仮想ディレクトリ レベルまたは物理ディレクトリ レベルの Web.config

要件

Microsoft Internet Information Services (IIS) Version 5.0 以降

.NET Framework Version 1.0 以降

Microsoft Visual Studio 2003 以降

参照

処理手順

方法 : Location の設定を使用して特定のディレクトリを構成する

方法 : ASP.NET 構成設定をロックする

参照

configuration 要素 (全般設定スキーマ)

pages の controls 要素 (ASP.NET 設定スキーマ)

pages の namespaces 要素 (ASP.NET 設定スキーマ)

pages の tagMapping 要素 (ASP.NET 設定スキーマ)

system.web 要素 (ASP.NET 設定スキーマ)

@ Page

System.Configuration

System.Web.Configuration

Page

PagesSection

概念

ASP.NET 構成ファイルの階層と継承

ASP.NET 構成の保護

その他の技術情報

全般構成設定 (ASP.NET)

ASP.NET 構成設定

ASP.NET Web サイト管理

ASP.NET 構成 API