Подтвердить что ты не робот

Как решить Не удается найти ошибку ContentPlaceHolder?

Наличие момента "duh", пытающегося реализовать новую страницу контента

Здесь структура

Master Page
---- Nested Master Page
-------- Nested Master 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>

Ошибка приема:

Не удается найти ContentPlaceHolder 'Content2' на главной странице '/Views/Intervention/InterventionMaster.master', проверьте содержимое управляйте атрибутом ContentPlaceHolderID на странице содержимого.

Что я могу делать неправильно?

4b9b3361

Ответ 1

У вас нет 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>

Ответ 2

Грязным решением было бы обойти Вложенную главную страницу с страницы вложенного основного контента

protected void Page_PreInit(object sender, EventArgs e)
        {
            Master.MasterPageFile = "~/Whatever.Master";
        }

Ответ 3

Использовать ID="MainContent"

<asp:Content ID="Content2" ContentPlaceHolder ID="MainContent" runat="server"></asp:Content>