新しいコンテンツページを実装しようとする「だめ」の瞬間がある
ここに構造があります
Master Page
---- Nested Master Page
-------- Nested Master's Content Page
マークアップ:
マスターページ
<asp:ContentPlaceHolder ID="bodyContent" runat="server">
</asp:ContentPlaceHolder>
ネストされたマスターページ
MasterPageFile="~/Views/Shared/Administrator.Master"
<asp:Content ID="Content2" CotentPlaceHolderID="bodyContent" runat="server">
</asp:Content>
ネストされたマスターのコンテンツページ
MasterPageFile="~/Views/Intervention/InterventionMaster.master"
<asp:Content runat="server" ID="myContent" ContentPlaceHolderID="Content2">
</asp:Content>
受信エラー:
マスターページ '/Views/Intervention/InterventionMaster.master'でContentPlaceHolder 'Content2'が見つかりません。コンテンツページでコンテンツコントロールのContentPlaceHolderID属性を確認してください。
何が悪いのでしょうか?
ContentPlaceHolder
とID = "Content2"
がありません。そのようなIDのコンテンツのみがあります。 ID="Content2"
を使用してコンテンツ内に別のプレースホルダーを配置し、ページコンテンツに接続します。
マスターページ
<asp:ContentPlaceHolder ID="bodyContent" runat="server">
</asp:ContentPlaceHolder>
ネストされたマスターページ
<asp:Content ID="Content2" ContentPlaceHolderID="bodyContent" runat="server">
<asp:ContentPlaceHolder ID="nestedContent" runat="server">
</asp:ContentPlaceHolder>
</asp:Content>
ネストされたマスターのコンテンツページ
<asp:Content runat="server" ID="myContent" ContentPlaceHolderID="nestedContent">
</asp:Content>
ダーティクイックソリューションは、ネストされたマスターのコンテンツページからネストされたマスターページをバイパスすることです。
protected void Page_PreInit(object sender, EventArgs e)
{
Master.MasterPageFile = "~/Whatever.Master";
}
使用ID="MainContent"
<asp:Content ID="Content2" ContentPlaceHolder ID="MainContent" runat="server"></asp:Content>