本節介紹使用
ASP.NETWebPages 來實現風格統一的頁面佈局。透過Web Pages ,建立一個佈局一致的網站是很容易的事。
在因特網上,您會發現許多網站都具有一致的外觀和風格:
每個頁面有相同的頭部
每個頁面有相同的底部
每個頁面有相同的樣式和佈局
透過Web Pages ,您能非常有效率地做到這一點。您可以把重複使用的內容區塊(例如頁面頭部和底部)寫在一個單獨的檔案中。
您也可以使用佈局範本(佈局文件)為網站的所有網頁定義一致的佈局。
許多網站都有一些內容是被顯示在網站的每個頁面中(例如頁面頭部和底部)。
透過Web Pages,您可以使用@RenderPage()方法從不同的檔案匯入內容。
內容區塊(來自另一個文件)能被導入網頁中的任何地方。內容區塊可以包含文本,標記和程式碼,就像任何普通的網頁一樣。
將共同的頭部和底部寫成單獨的文件,這會幫您節省大量的工作。您不必在每個頁面中書寫相同的內容,當內容有變動時,您只要修改頭部或底部文件,就可以看到網站中的每個頁面的相應內容都已更新。
以下顯示了它在程式碼中是如何呈現的:
<html> <body> @RenderPage("header.cshtml") <h1>Hello Web Pages</h1> <p>This is a paragraph</p> @RenderPage("footer.cshtml") </body> </html>
在上一部分,您看到了,想在多個網頁中顯示相同內容是非常容易的。
另一種建立一致外觀的方法是使用佈局頁。一個版面頁包含了網頁的結構,而不是內容。當一個網頁(內容頁)連結到佈局頁,它會根據佈局頁(模板)的結構進行顯示。
在版面頁中使用@RenderBody()方法嵌入內容頁,除此之外,它與一個正常的網頁沒有什麼差別。
每個內容頁都必須以版面配置指令開始。
以下顯示了它在程式碼中是如何呈現的:
<html> <body> <p>This is header text</p> @RenderBody() <p>© 2012 W3CSchool. All rights reserved.</p> </body> </html>
@{Layout="Layout.cshtml";} <h1>Welcome to w3cschool.cn</h1> <p> Lorem ipsum dolor sit amet, consectetur adipisicing elit,sed do eiusmod tempor incididunt ut labore et dolore magna aliqua。 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 = "your-name [email protected]"; }
以上就是有關ASP.NETWebPages佈局內容,如果想要更方便的統一網頁佈局的話,你可以試試ASP.NET Web Pages 來進行佈局。