Загрузка данных ViewComponent по требованию на главной странице asp.net с несколькими вкладками - PullRequest
0 голосов
/ 08 декабря 2018

Я хочу создать страницу бритвы с несколькими вкладками начальной загрузки.

Страница бритвы: Customers / Edit.cshtml Вкладки на странице: [Информация о клиенте] [Контакты] [Заказы]

Основываясь на проведенном мной исследовании, я считаю, что ViewComponents или Partial Views будут моим другом здесь для того, чтобы разбить каждый раздел на наличие собственной модели и возможность повторного использования.

Однако я немного запутался в том, какСтарайтесь не загружать все данные для информации о клиенте, контактов, заказов одновременно из модели «Клиенты / Редактировать страницу».

Моя цель - сделать так, чтобы при нажатии на вкладку загружались данные.

1 Ответ

0 голосов
/ 08 декабря 2018

Как в MVC, так и в Core я использую различные методы в зависимости от того, как я вижу приложение в данный момент.

Если у вас все в одной модели представления, то на вкладках начальной загрузки просто отображается то, что уже отрисовано клиенту,Если вам нужно редактировать внутри каждой вкладки, тогда этот метод работает хорошо (где объем данных невелик).Я мог бы использовать ряд действий, которые принимают модель представления, но обрабатывают только функциональность одной вкладки.Также стоит добавить параметр действия, который позволит вам выбрать видимую вкладку при отображении представления.Опция SAVE может быть простой с одним методом бизнес-уровня для обработки сценариев как создания, так и обновления.

Если есть только отображение данных и ссылок в другое место, я мог бы использовать метод javascript для загрузки HTML каждой вкладкикогда он активируется от связанного действия.Если вы хотите выполнить операции изменения, вам придется управлять этим на каждой вкладке.Основной вид очень прост с заполнителями DIV, чтобы содержать HTML, отображаемый из каждого действия для каждой вкладки.Вы, вероятно, будете использовать javascript для действия обновления, но вы также можете использовать стандартную форму / запись с помощником ajax для отображения только содержимого DIV, необходимого для действия обновления.

Я иногда использую диалог Bootstrap для обновленийкоторый контролируется из JavaScript.В этих случаях мои действия по обновлению возвращают JSON с логическим значением, указывающим на пропуск / сбой, и поэтому возвращаемое сообщение является либо сообщением об ошибке, либо сообщением об успехе.JavaScript используется для обновления содержимого вкладки при успехе

Ни один из методов не лучше, чем другой

...