Master Page در حقیقت به صورت یک پوسته و صفحه ای که در بین تمام صفحات یا برخی از آن ها می تواند به اشتراک گذاشته شود , عمل می کند. این صفحه می تواند شامل لوگوی وب سایت - منو - نقشه سایت یا هر آبجکت دیکر مثل بعضی از کنترل های امنیتی که لازم است که در تمام یا اکثر صفحات باشند می شود.
در داخل master page می توان یک یا چند ناحیه به نام placeholder تعریف کرد که سایر اجزای صفحه باید در داخل آن قرار داده شوند.
برای استفاده از master page مراحل زیر را انجام می دهیم:
1- ایجاد یک وب سایت جدید.
2- یک master page به وبلاگ خود اضافه کنید.(اضافه کردن آیتم به پروِه)
3- محتویات و آیتم های صفحات را در داخل contentPlaceHolder قرار دهید.
پروژه: برای آشنایی بیشتر با master page یک پروژه ایجاد می کنیم و در همان پروژه مطالب را توضیح می دهیم.
1- از منوی File بر روی New Web Site کلیک کنید.
2- در پنجره باز شده آیتم ASP.NET Empty Web Site را انتخاب کنید و بر روی OK کلیک کنید.
3- یک master page به پروژه اضافه کنید(اضافه کردن آیتم به پروِه)
<!--
<head runat="server">
<title></title>
<asp:ContentPlaceHolder id="head" runat="server">
</asp:ContentPlaceHolder>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:ContentPlaceHolder id="ContentPlaceHolder1" runat="server">
</asp:ContentPlaceHolder>
</div>
</form>
</body>
</html>
-->
کد داخل Master page شما به صورت بالا می باشد در کد بالا دو قسمت مهم وجود دارد البته استفاده از <!-- و --> در ابتدا و انتهای کد ها برای جلوگیری از اختلال در کد وبلاگ می باشد و باید حذف شوند
<!--
<asp:ContentPlaceHolder id="head" runat="server">
</asp:ContentPlaceHolder>
-->
این قسمت در داخل تگ head قرار دارد در صفحاتی که از این master page استفاده می کنند کد زیر وجود دارد
<!--
<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
</asp:Content>
-->
چون در صفحاتی که از master page استفاده می کنند تگ head وجود ندارد شما می توانید کد های را که لازم است درون تگ head قرار گیرند را درون این بلاک قرار دهید برای مثال تگ
<!--
<link href="StyleSheet.css" rel="stylesheet" type="text/css" />
-->
را باید درون این بلاک قرار دهید. برای درک ساده تر باید بگویم که این بلاک معادل تگ head می باشد