すべてのページで同じレイアウト (ヘッダー、ナビゲーション、フッターなど) を維持したいようです。ASP.NET 2.0 ではマスター ページが導入されました。これは基本的に、レイアウト内のプレース ホルダーを埋めるコンテンツ ページを作成できるレイアウト ファイルです。
ASP.NET マスター ページを使用すると、アプリケーション内のページに一貫したレイアウトを作成できます。単一のマスター ページは、アプリケーション内のすべてのページ (またはページのグループ) に必要なルック アンド フィールと標準的な動作を定義します。次に、表示するコンテンツを含む個々のコンテンツ ページを作成できます。ユーザーがコンテンツ ページを要求すると、コンテンツ ページはマスター ページとマージされ、マスター ページのレイアウトとコンテンツ ページのコンテンツを組み合わせた出力が生成されます。
MSDN 記事のサンプルを次に示します。
マスター ページ:
<%@ Master Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML
1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server" >
<title>Master page title</title>
</head>
<body>
<form id="form1" runat="server">
<div><asp:contentplaceholder id="Main" runat="server" /></div>
<div><asp:contentplaceholder id="Footer" runat="server" /></div>
</form>
</body>
</html>
コンテンツページ:
<% @ Page Language="C#" MasterPageFile="~/Master.master" Title="Content Page 1" %>
<asp:Content ID="Content1" ContentPlaceHolderID="Main" Runat="Server">
Main content.
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Footer" Runat="Server" >
Footer content.
</asp:content>