通過 Web Pages ,建立一個布局一緻的網站是很容易的事。
在網際網路上,您會發現很多網站都具有一緻的外觀和風格:
每個頁面有相同的頭部
每個頁面有相同的底部
每個頁面有相同的樣式和布局
通過 Web Pages ,您能非常高效地做到這點。您可以把重複使用的内容塊(比如頁面頭部和底部)寫在一個單獨的檔案中。
您還可以使用布局模闆(布局檔案)為站點的所有網頁定義一緻的布局。
許多網站都有一些内容是被顯示在站點的每個頁面中(比如頁面頭部和底部)。
通過 Web Pages,您可以使用 <b>@RenderPage()</b> 方法從不同的檔案導入内容。
内容塊(來自另一個檔案)能被導入網頁中的任何地方。内容塊可以包含文本,标記和代碼,就像任何普通的網頁一樣。
将共同的頭部和底部寫成單獨的檔案,這樣會幫您節省大量的工作。您不必在每個頁面中書寫相同的内容,當内容有變動時,您隻要修改頭部或者底部檔案,就可以看到站點中的每個頁面的相應内容都已更新。
以下顯示了它在代碼中是如何呈現的:
<html>
<body>
@RenderPage("header.cshtml")
<h1>Hello Web Pages</h1>
<p>This is a paragraph</p>
@RenderPage("footer.cshtml")
</body>
</html>
在上一部分,您看到了,想在多個網頁中顯示相同内容是非常容易的。
另一種建立一緻外觀的方法是使用布局頁。一個布局頁包含了網頁的結構,而不是内容。當一個網頁(内容頁)連結到布局頁,它會根據布局頁(模闆)的結構進行顯示。
布局頁中使用 @RenderBody() 方法嵌入内容頁,除此之外,它與一個正常的網頁沒有什麼差别。
每個内容頁都必須以布局指令開始。
<p>This is header text</p>
@RenderBody()
<p>&copy; 2012 Runoob. All rights reserved.</p>
@{Layout="Layout.cshtml";}
<h1>Welcome to Runoob.com</h1>
<p>
Lorem ipsum dolor sit amet, consectetur adipisicing elit,sed do eiusmod tempor
incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis
nostrud exercitation ullamco laborisnisi ut aliquip ex ea commodo consequat.
</p>
通過 Content Blocks(内容塊)和 Layout Pages(布局頁)這兩個 ASP.NET 工具,您可以讓您的 Web 應用程式顯示一緻的外觀。
這兩個工具能幫您節省大量的工作,您不必再每個頁面上重複相同的資訊。集中的标記、樣式和代碼讓您的 Web 應用程式更易于管理,更易于維護。
在 ASP.NET 中,檔案的名稱以下劃線開頭,可以防止這些檔案在網上被浏覽。
如果您不想讓您的内容塊或者布局頁被您的使用者看到,可以重命名這些檔案:
_header.cshtm
_footer.cshtml
_Layout.cshtml
在 ASP.NET 中,隐藏敏感資訊(資料庫密碼、電子郵件密碼等等)最通用的方法是将這些資訊儲存在一個名為"_AppStart"的單獨的檔案中。
@{
WebMail.SmtpServer = "mailserver.example.com";
WebMail.EnableSsl = true;
WebMail.UserName = "[email protected]";
WebMail.Password = "your-password";
WebMail.From = "[email protected]";
}