サーバー側インクルード ディレクティブ構文

指定したファイルの内容を、Web ページ (.aspx ファイル)、ユーザー コントロール ファイル (.ascx ファイル)、Global.asax ファイルなどの ASP.NET ファイルに挿入します。

<!-- #include file|virtual="filename" -->

属性

  • File
    ファイル名は、#include ディレクティブが指定されたファイルが格納されているディレクトリからの物理パスです。 このパスには、相対パスも指定できます。

    メモメモ

    インクルードするファイルは、同じディレクトリまたはサブディレクトリに配置できますが、#include ディレクティブのあるファイルの上位ディレクトリには配置できません。

  • Virtual
    ファイル名は、Web サイトの仮想ディレクトリからの仮想パスです。 このパスには、相対パスも指定できます。

    メモメモ

    ファイルへの物理パスは変更される可能性があるため、この手法をお勧めします。

解説

File 属性または Virtual 属性に割り当てる値は、二重引用符 ("") で囲む必要があります。 インクルードするファイルは、動的コードが実行される前に処理されます。 インクルード ファイルは、静的テキスト (共有のページ ヘッダーや企業の住所など) から、他のページに挿入する共通のサーバー側コード、コントロール、HTML マークアップのブロックまで、任意の内容の格納に使用できます。

メモメモ

#include タグをコードの再利用を目的として使用することもできますが (共通のサーバー側コード、コントロール、または HTML マークアップをファイルに含め、それらを他の Web ページに挿入する)、ASP.NET で用意されている一般的な方法は Web ユーザー コントロールを使用することです。ユーザー コントロールは、オブジェクト指向プログラミング モデルを実現しており、サーバー側インクルードより多機能です。詳細については、「ASP.NET ユーザー コントロール」を参照してください。

#include タグは、リテラル テキストとして解釈されることを防ぐため、HTML コメント デリミターまたは XML コメント デリミターで囲む必要があります。

使用例

サーバー側インクルード ディレクティブ構文を使用して、ASP.NET ページにヘッダーとフッターを作成するファイルを呼び出す方法を、次のコード例に示します。 これら 2 つのディレクティブでは、相対パスが使用されています。

<html>
   <body>
      <!-- #Include virtual="/include/header.inc" -->
        Here is the main body of the .aspx file.
      <!-- #Include virtual="/include/footer.inc" -->
   </body>
</html>

参照

概念

ASP.NET Web ページの構文の概要

その他の技術情報

ASP.NET ユーザー コントロール