情境
我有一个使用asp.net Master Pages的应用程序,我想在页面的顶部和底部重复一些内容。目前我使用类似于以下方式:
Master Page<html>
<body>
<asp:ContentPlaceHolder ID="Foo" runat="server">
</asp:ContentPlaceHolder>
<!-- page content -->
<asp:ContentPlaceHolder ID="Bar" runat="server">
</asp:ContentPlaceHolder>
</body>
</html>
内容页<asp:Content ID="Top" ContentPlaceHolderID="Foo" runat="server">
<!-- content -->
</asp:Content>
<asp:Content ID="Bottom" ContentPlaceHolderID="Bar" runat="server">
<!-- content repeated -->
</asp:Content>
维护
正如你所知,在代码中重复的东西通常不是好的。它会导致维护问题。以下是我想做的事情,但显然由于重复的id属性而无法实现:
主页面<html>
<body>
<asp:ContentPlaceHolder ID="Foo" runat="server">
</asp:ContentPlaceHolder>
<!-- page content -->
<asp:ContentPlaceHolder ID="Foo" runat="server">
</asp:ContentPlaceHolder>
</body>
</html>
内容页面<asp:Content ID="Top" ContentPlaceHolderID="Foo" runat="server">
<!-- content (no repetition) -->
</asp:Content>
可能吗?
是否有一种使用asp.net webforms的方法来实现这个功能?解决方案不一定要与上述内容相似,只需要达到相同的效果即可。
注释
我正在使用Visual Studio 2008中的asp.net 3.0。