آموزش ASP.Net به زبان ساده > آموزش مدل ASP.Net MVC
درس چهارم : قالب بندی صفحات در پروژه ASP.Net MVC
مقدمه :
در ادامه پروژه طراحی یک نرم افزار با ASP.Net MVC ، در بخش دوم به بررسی
نحوه قالب بندی برای پروژه خواهیم پرداخت .
اضافه کردن فایل قالب به پروژه :
فایل File_Layout.html تعیین کننده قالب و نمایه کلی به صفحات پروژه است . این فایل
درون پوشه Shared از مجموعه پوشه های موجود در پوشه اصلی Views می باشد . این فایل
در واقع حکم یک مسترپیج یا قالب کلی را برای تمام صفحات پروژه بر عهده دارد . محتویات
کد زیر را درون فایل قرار دهید . مواردی که با رنگ قرمز مشخص شده اند را در ادامه توضیح
داده ایم :
|
کد
|
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>@ViewBag.Title</title>
<link href="@Url.Content("~/Content/Site.css")" rel="stylesheet" type="text/css" />
<script src="@Url.Content("~/Scripts/jquery-1.5.1.min.js")"></script>
<script src="@Url.Content("~/Scripts/modernizr-1.7.min.js")"></script>
</head>
<body>
<ul id="menu">
<li>@Html.ActionLink("Home",
"Index", "Home")</li>
<li>@Html.ActionLink("Movies",
"Index", "Movies")</li>
<li>@Html.ActionLink("About",
"About", "Home")</li>
</ul>
<section id="main">
@RenderBody( )
<p>Copyright
Developer1.ir
. All Rights Reserved.</p>
</section>
</body>
</html>
|
توضیحات موارد کد :
در کد فوق از اجزای جدیدی در Asp.Net به نام Html Helpers یا کمک دهنده های Html استفاده کرده ایم . این ابزارها
کمک می کنند تا محتویات صفحات Html را ویرایش نماییم ، این اجزا عبارتند از :
- ( ) @Url.Content : این متد محتویات فایل تعیین شده درون پرانتز
آن را در قسمت مربوطه در صفحه وارد می کند .
- ( ) @Html.ActionLink : این متد لینک های Html تعیین شده برای
آن را در بخش مربوط وارد می کند .
در درس های بعدی با Html Helpers بیشتر آشنا خواهید شد .
کدهای Razor :
همچنین در کد فوق دستوراتی را درون صفحه به زبان #C نوشته ایم که به آنها کدهای درون
خطی یا
Razor می گویند . این کدها عبارتند از :
- @ViewBag.Title : عنوان صفحه مورد نظر را در این قسمت وارد
می کنیم .
- ( ) @ReaderBody : کد فوق کد صفحه قالب است . کد صفحه محتوا
که قرار است به این صفحه پیوند خورده و تشکیل یک صفحه واحد را دهد ، در این قسمت وارد
می شود .
برای دریافت اطلاعات بیشتر راجع به نوشتن کدهای Razor به بخش آموزش کدهای Razor بروید .
اضافه کردن استایل ( فایل های CSS ) به قالب :
فایلی که تنظیمات استایل بندی فایل (CSS) را درون خود نگهداری می کند ، Site.css نام
داشته که در پوشه Content قرار دارد ، آن را باز کرده و کدهای CSS زیر را برای تعیین
ظاهر قالب به آن اضافه کنید :
کد فایل
CSS
|
body
{
font: "Trebuchet MS", Verdana, sans-serif;
background-color: #5c87b2;
color: #696969;
}
h1
{
border-bottom: 3px solid #cc9900;
font: Georgia, serif;
color: #996600;
}
#main
{
padding: 20px;
background-color: #ffffff;
border-radius: 0 4px 4px 4px;
}
a
{
color: #034af3;
}
/* Menu Styles ------------------------------*/
ul#menu
{
padding: 0px;
position: relative;
margin: 0;
}
ul#menu li
{
display: inline;
}
ul#menu li a
{
background-color: #e8eef4;
padding: 10px 20px;
text-decoration: none;
line-height: 2.8em;
/*CSS3 properties*/
border-radius: 4px 4px 0 0;
}
ul#menu li a:hover
{
background-color: #ffffff;
}
/* Forms Styles ------------------------------*/
fieldset
{
padding-left: 12px;
}
fieldset label
{
display: block;
padding: 4px;
}
input[type="text"], input[type="password"]
{
width: 300px;
}
input[type="submit"]
{
padding: 4px;
}
/* Data Styles ------------------------------*/
table.data
{
background-color:#ffffff;
border:1px solid #c3c3c3;
border-collapse:collapse;
width:100%;
}
table.data th
{
background-color:#e8eef4;
border:1px solid #c3c3c3;
padding:3px;
}
table.data td
{
border:1px solid #c3c3c3;
padding:3px;
}
|
فایل ViewStart_ و کاربرد آن :
این فایل ، فایل مشترکی در پروژه است که درون پوشه Shared پروژه قرار داشته و حاوی
کد زیر است :
کد فایل
_ViewStart
|
@{Layout = "~/Views/Shared/_Layout.cshtml";}
|
این کد بصورت اتوماتیک به تمامی View های موجود در پروژه اضافه شده و در واقع فایل
قالب را برای همه صفحه ها تعیین می کند . این کد لینک اتصال فایل قالب به صفحات سایت
است ، اگر آن را حذف کنید بایستی در تمامی صفحاتی که می خواهید از قالب سایت استفاده
کنند ، آن را بنویسید .
راجع این مطلب
سوال یا اشکالی دارید ؟! آن را در انجمن سایت مطرح نمایید ...
>>>>> ورود به انجمن تخصصی
نطر خودتان درباره این صفحه را با ما در میان گذاشته و در صورت تمایل از Developer1
حمایت نمایید :