Я пытался организовать грязную мастер-страницу из проекта, над которым я должен работать, используя RenderPartials, так как его код был действительно нечитаемым. В зависимости от роли пользователя данные основного контента отображаются тем или иным способом. Я сделал это:
<!-- Header -->
<% Html.RenderPartial("SiteHeaderPartialView"); %>
<!-- Content -->
<% Html.RenderPartial("ContentPartialView"); %>
<!--Footer -->
<% Html.RenderPartial("SiteFooterPartialView"); %>
Затем в ContentPartialView, после проверки роли пользователя, я наконец-то использую тег:
<asp:ContentPlaceHolder ID="MainContent" runat="server">
</asp:ContentPlaceHolder>
Но когда сайт отображается, я получаю сообщение об ошибке: «Не удается найти ContentPlaceHolder 'MainContent' на главной странице». Итак, мой вопрос заключается в следующем: возможно ли использовать RenderPartials в MasterPage и поместить в них ASP ContentHolders? Это почему? Есть ли другой способ реорганизации MasterPage, чтобы я мог выглядеть чище и читабельнее? Заранее благодарю за советы.