спроектировать интерфейс, этот интерфейс представляет из себя совокупность компонентов - есть шапка страницы, подвал, основаная часть, которая тоже состоит из совокупности компонентов. Каждый компонент представлен cshtml файлом и его viewmodel'ю. В конечном итоге у меня получилась главная страница, внутри которой "рендерятся" другие страницы (через @Html.Partial()) и так далее. В контроллере же, в методе действия, который возвращает главную страницу, формируется комплексная viewmodel, в виде дерева:
MainPageViewModel mainPageViewModel = new MainPageViewModel
{
HeaderViewModel = new HeaderViewModel(),
ContentViewModel = new ContentViewModel
{
... // other viewmodels
},
FooterViewModel = new FooterViewModel()
}
Потом эта главная viewmodel передается в строготипизированную главную страницу, и там уже из этой viewmodel извлекаются вложенные viewmodel'и и передаются дальше. Вопрос в правильности такого подхода, стоит ли так делать или существует лучшая практика?
нормально, просто если надо будет менять модель на определенном этапе загрузки страницы или скажем динамически подгрузить, то в этом случае проявляется негибкость такого подхода
Лучше сервер только Джейсоном чтоб плевался, а компоненты на реакте или Вью херануть
Обсуждают сегодня