我创建了一个基于MasterPage的网站,在创建了一些页面后,我添加了一个新的<asp:ContentPlaceHolder>
但似乎现有页面不会更新以包含它,但是新页面会。
有没有办法强制更新,或者有没有适当的方法来做到这一点?我刚刚保存了母版页,并希望最好。
手动将新<asp:ContentPlaceHolder>
添加到旧aspx
页面。
在母版页中:
<asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server">
</asp:ContentPlaceHolder>
<asp:ContentPlaceHolder ID="new_one" runat="server"></asp:ContentPlaceHolder>
在旧的 ASPX 页中,添加:
<asp:Content ID="Content3" ContentPlaceHolderID="new_one" runat="server">
</asp:Content>
如果在母版页中创建新的内容占位符,则内容页不需要具有相应的<asp:Content>
。 仅当您要替换母版页中放置的默认内容时,它们才需要一个。
如果您要用自己的内容更新每个页面,那么添加<asp:Content>
标签可能是一个相对较小的不便。
遗憾的是,Visual Studio 无法搜索出所有内容页并使用新的<asp:Content>
控件更新它们。
但是,你可以通过使用现有 <asp:Content>
控件的 id 进行查找,并执行ctrl
+ shift
+ F
并替换为新<asp:Content>
加上搜索的内容,从而相当快地执行此操作。
例如,如果您的内容页面已经全部具有
<asp:Content ID="Content3" ContentPlaceHolderID="old_one" ... />
然后你可以搜索它并替换为
<asp:Content ID="Content4" ContentPlaceHolderID="new_one" runat="server" /><asp:Content ID="Content3" ContentPlaceHolderID="old_one" ... />
不是很漂亮,但可以节省一些时间。