Я настраиваю пользовательское определение контента, запрос и проекцию, чтобы показать эти определения контента, а затем настраиваю Content-[ItemType].Detail.cshtml, чтобы полностью настроить внешний вид этого элемента. Проблема, с которой я сталкиваюсь, заключается в том, что он помещает подробное представление для этого в Model.Content
(в Layout.cshtml), но мне бы очень хотелось вместо этого добавить подробное представление для этого типа контента в зону с именем LargeLeft
.
Например, у меня есть нижеприведенное, которое используется, когда появляется зона LargeLeft
с зоной под названием SmallRight
(которая очень хорошо работает для своей части):
@* large left bar, small right column *@
@if (Model.LargeLeft != null && Model.SmallRight != null) {
<div class="col_12">
@Zone(Model.LargeLeft)
@if (Model.SocialMedia != null) {
@Zone(Model.SocialMedia)
}
</div>
<div class="col_4">
@Zone(Model.SmallRight)
</div>
}
Поскольку мой пользовательский тип контента просто сопоставляется с Model.Content
, приведенное выше не отображается, и вместо этого оно добавляется сюда:
@if (Model.Content != null) {
<div class="col_16">
@Zone(Model.Content)
@if (Model.SocialMedia != null) {
@Zone(Model.SocialMedia)
}
</div>
}
Я полагаю, что это что-то с Placement.info, но поскольку я не пытаюсь сдвинуть отдельные части (мой дизайнер хотел получить полный контроль над HTML, следовательно, переопределить шаблон) и мне нужно поместить все это в определенное имя зоны, я немного потерял.
Есть идеи?