Должен ли я создать свое поле фильтров поиска, например, как ViewComponent? - PullRequest
0 голосов
/ 24 ноября 2018

Все примеры, которые я нашел в сети, используют ViewComponents для сложных компонентов, которые разрешают сами себя, другими словами, компоненты, которые выполняют некоторую логику и показывают некоторый результат без взаимодействия с представлением вызывающей стороны.

Но у меня естьполе поиска, которое будет использоваться в некоторых представлениях и должно взаимодействовать с представлением вызывающего абонента

Когда пользователь нажимает кнопку поиска, представление вызывающего абонента загружается с отфильтрованными данными в сетке или таблице.

В веб-формах asp.net я мог бы создать свое собственное поле фильтра поиска в пользовательском контроле, но в netcore я не знаю, должен ли я использовать эту новую функцию под названием ViewComponent для этого.

что вы думаете?

Search Filtered Box

1 Ответ

0 голосов
/ 24 ноября 2018

На этот вопрос нет верного ответа.Мое эмпирическое правило: если ваши представления, использующие это поле фильтра поиска, используют одну и ту же модель представления, и маловероятно, что поле поиска будет использовано позже для совершенно разных представлений: начните с частичного представления.Если поле поиска будет использоваться для очень разных представлений с разными моделями представлений: Реализуйте компонент представления.Компоненты представления более независимы от частичных представлений, поскольку они имеют свой собственный код в своем соответствующем классе, поэтому они могут, например, создавать свои собственные модели представлений.Таким образом, ваше окно поиска будет только слабо связано с вашими представлениями, и вам не придется так сильно изменять внешний вид вашего компонента, если вы захотите что-то изменить позже.Если вы просто хотите сохранить часть кода cshtml, повторяющегося в противном случае, определенно будет достаточно частичного просмотра.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...