ASP.NET Web Pages - طرحبندی صفحه
- صفحه قبل WebPages Razor
- صفحه بعدی پوشههای WebPages
با Web Pages، ایجاد وبگاههای با طرحبندی یکسان بسیار آسان است.
ظاهر یکسان
در اینترنت، وبگاههای بسیاری با ظاهر یکسان را خواهید یافت:
- هر صفحه دارای سربرگ مشابهی است
- هر صفحه دارای پاورقی مشابهی است
- هر صفحه دارای سبک و طرحبندی مشابهی است
با Web Pages، میتوانید به طور مؤثر اینها را انجام دهید. شما میتوانید بلوکهای کد قابل استفاده مجدد (بلاکهای محتوایی) مانند سربرگ و پاورقی را در فایلهای مستقل دریافت کنید.
شما همچنین میتوانید برای همه صفحات یک طرحبندی یکسان تعریف کنید، از قالبهای طرحبندی (فایلهای طرحبندی) استفاده کنید.
بلاکهای محتوایی
بسیاری از وبگاهها محتوایی دارند که باید در هر صفحه نمایش داده شوند (مثلاً سربرگ و پاورقی).
با Web Pages، شما میتوانید @RenderPage() روشها از فایلهای مختلف محتوا وارد میشوند.
بلاکهای محتوایی (از یک فایل دیگر) میتوانند در هر مکانی از صفحه وبگذاری شوند و میتوانند شامل متن، برچسبها و کد باشند، مانند هر صفحه معمولی وبگاه.
استفاده از سربرگ و پاورقی عمومی، بسیاری از کارها را صرفهجویی میکند. شما نیازی ندارید که محتوای مشابهی را در هر صفحه بنویسید و زمانی که سربرگ یا پاورقی را تغییر میدهید، محتوا در همه صفحات بهروزرسانی میشود.
در کد به این صورت است:
مثال
<html> <body> @RenderPage("header.cshtml") <h1>سلام صفحات وب</h1> <p>این یک پاراگراف است</p> @RenderPage("footer.cshtml") </body> </html>
اجرای مثال
از صفحات طرحبندی استفاده کنید
در محتوای قبلی، شما دیدید که مرجعگذاری محتوای مشابه در صفحات چندگانه بسیار آسان است.
یک روش دیگر برای ایجاد ظاهر یکسان برای وبگاهها استفاده از صفحات طرحبندی است. صفحات طرحبندی شامل ساختار وبگاه است، نه محتوا. وقتی وبگاهها (صفحات محتوایی) به صفحات طرحبندی لینک میشوند، بر اساس طرحبندی (قالب) نمایش داده میشوند.
صفحات طرحبندی مانند صفحات معمولی وبگاه هستند، اما در مکانی که محتوای صفحههای مرجعگذاری شده است، فراخوانی میشوند @RenderBody() روش.
هر صفحه محتوایی باید با دستور Layoutشروع.
در کد به این صورت است:
طرح وبگاه:
<html> <body> <p>این متن است.</p> @RenderBody() <p>© 2012 CodeW3C.com. تمام حقوق محفوظ است.</p> </body> </html>
صفحههای مختلف:
@{Layout="Layout.cshtml";} <h1>به CodeW3C.com خوش آمدید</h1> <p> این متن است. این متن است. این متن است. این متن است. این متن است. این متن است. این متن است. این متن است. این متن است. این متن است. این متن است. این متن است. این متن است. این متن است. این متن است. این متن است. این متن است. این متن است. این متن است. این متن است. این متن است. این متن است. این متن است. این متن است. </p>
اجرای مثال
تکرار نکنید
با دو ابزار ASP.NET، بلوکهای محتوایی و صفحات طرحبندی، شما میتوانید یک ظاهر یکسان برای برنامه وب خود تنظیم کنید.
این ابزارها میتوانند مقدار زیادی از زمان شما را صرفهجویی کنند، زیرا نیازی نیست در تمام صفحات اطلاعات مشابه را تکرار کنید. برچسبها، استایلها و کدها را در یک مکان جمعآوری کنید تا برنامه وب شما راحتتر مدیریت و نگهداری شود.
ممانعت از نشت کد
در ASP.NET، فایلهایی که با خط زیرین شروع میشوند نمیتوانند از طریق وب مشاهده شوند.
اگر میخواهید کاربران نتوانند محتوای بلوک یا فایلهای طرحبندی را مشاهده کنند، نام فایلها را تغییر دهید:
- _header.cshtm
- _footer.cshtml
- _Layout.cshtml
مخفی کردن اطلاعات حساس
در ASP.NET، یک روش معمول برای مخفی کردن اطلاعات حساس (مانند رمز عبور دیتابیس، رمز عبور ایمیل و غیره) این است که این اطلاعات را در یک فایل مستقل به نام "_AppStart" ذخیره کنید.
_AppStart.cshtml
@{ WebMail.SmtpServer = "mailserver.example.com"; WebMail.EnableSsl = true; WebMail.UserName = "username@example.com"; WebMail.Password = "your-password"; WebMail.From = "your-name-here@example.com"; }
- صفحه قبل WebPages Razor
- صفحه بعدی پوشههای WebPages