Разработчикам
Представления Razor
Руководство разработчика PageCharm
Как программировать публичные страницы и виджеты на обычном Razor.
Модель страницы
Каждое представление получает PageCharmPageModel: текущий контент, блок, шаблон, view и словарь атрибутов.
Запросы к CMS
В Razor можно внедрить IPageCharmContentQuery, чтобы получить меню, карточки, дочерние страницы или связанные материалы.
Без магии
Это обычный ASP.NET Core MVC/Razor: можно использовать DI, tag helpers, локальные partials, CSS, компоненты и любые сервисы приложения.
Пример
@model PageCharmPageModel
@inject IPageCharmContentQuery Content
@{
var nav = await Content.Active()
.FromBlocks("navigation")
.WithTemplates("nav-link")
.ToListAsync();
}
Данные без URL
Пункты меню в этом sample — обычный контент без представления. Они не открываются публично, но участвуют в рендеринге сайта.