我是ASP.NET的新成員,我想用一種簡單的技術,我曾在Web站點上使用PHP進行操作。也就是說,包含文件來渲染頁眉和頁腳。例如,在ASP.NET中包含來自其他文件的頁眉和頁腳
<?php
include "header.php";
echo "Hello, world!";
include "footer.php";
?>
什麼是正確的方式來做這樣的事情?
我是ASP.NET的新成員,我想用一種簡單的技術,我曾在Web站點上使用PHP進行操作。也就是說,包含文件來渲染頁眉和頁腳。例如,在ASP.NET中包含來自其他文件的頁眉和頁腳
<?php
include "header.php";
echo "Hello, world!";
include "footer.php";
?>
什麼是正確的方式來做這樣的事情?
Webforms - 你會想要使用user controls。
ASP.NET MVC - 你會想要使用partial views。
基於其他答案之一的快速註釋 - 如果您使用網絡表單並嚴格使用此網站的多個網頁的通用頁眉和頁腳,那麼master pages實際上將是我認爲的最佳方法。但是,如果您一般地詢問如何在ASP.NET Web應用程序中呈現可重用的代碼塊,類似於您在php中使用includes
的方式,那麼用戶控件/部分視圖就是您要查找的內容。
在php中,你必須使用include()功能,但在asp.net中使用母版頁的概念。使用母版頁,你不需要這樣做。關注此 http://www.youtube.com/watch?v=epaavQsb950
在正常的ASP.NET網站,我們通過使用用戶控件實現它。用戶控制只是部分控件集合,可以在多個屏幕中重新使用。 標題和頁腳是最好的例子。請通過ASP.NET User Controls(MSDN)瞭解更多關於用戶控件的信息,這裏是詳細解釋它的a great walk through。
您是否已創建頁眉和頁腳?
如果是這樣,他們在什麼格式?
如果您從頭開始,我會推薦使用母版頁。 Creating a Site-Wide Layout Using Master Pages (C#)讓您開始快速使用母版頁。
在母版頁註冊控件:
<%@ Register src="~/Controls/Header.ascx" tagname="Header" tagprefix="abc" %>
<%@ Register src="~/Controls/Footer.ascx" tagname="Footer" tagprefix="abc" %>
而在母版頁的身體:
<body>
<form id="form1" runat="server">
<div id="header">
<abc:Header ID="abcHeader" runat="server" />
</div>
<div id="footer">
<abc:Footer ID="abcFooter" runat="server" />
</div>
</form>
</body>
這是對WebForms和用戶控件是我的猜測確實如此。 – DontVoteMeDown