2013-12-21 2 views
1

Задайте вопрос дизайна на нескольких страницах DropDownLists на виду.Несколько DropDownLists и модель View and View

Каков наилучший подход к отображению нескольких списков DropDownLists в представлении? Можно ли передать несколько DropDownLists в модель View?

Например:

Если бы я имел следующий вид модели: Student, курс и зачислению. И на странице «Обзор индексов» я возвращаюсь и показываю всех учеников. Но я хотел бы отфильтровать количество возвращаемых студентов на основе значений, выбранных из нескольких DropDownLists, таких как Suburb, LanguageSpoken ...

Каждый DropDownList будет заселен из базы данных.

два подхода, которые я могу думать:

  1. В Student View модели, есть (полностью заполненный) сбор Пригород, LanguageSpoken ....

  2. Имейте несколько моделей, переданных модели View. В этом случае одна Модель будет Студентом, а остальные Модели будут каждый DropDownLists. Я еще не изучил детали этого.

Мне не нравится первый подход, как это звучит очень неэффективно, то есть каждый студент трюмов коллекций список всех пригороды, Языки ... Кроме того, не уверен, что если второй подход возможен или даже хорошая идея.

Я использую ASP.NET MVC 5 и Entity Framework 6.

+0

http://stackoverflow.com/questions/18351921/how-to-populate-a-cascading-dropdown-with-jquery –

ответ

0

Ok, после того, как много читает и пытается целый ряд вещей, у меня наконец-то есть (простое) решение: Drop Down Lists используя ViewBag.

E.g. контроллер Student возвращает Viewmodel Student в представление, а любые другие модели, такие как почтовые индексы, языки ... возвращаются через ViewBag в представление.

Я считаю, что ViewBag соответствующим образом используется для таких данных, то есть для поиска (статического) типа данных.