Работа с NHibernate, ASP.NET MVC и Dropdown - PullRequest
5 голосов
/ 26 августа 2009

Мы используем ASP.NET MVC вместе с NHibernate, и мы хотели бы создать несколько раскрывающихся списков, используя значения (пользовательский класс) из базы данных. Это на самом деле работает, но как мне обработать значение «Пусто»; Я имею в виду, "невыбранный" DropdownValue? Что-то вроде «- Выбрать -» вверху списка ... Кто-нибудь имеет опыт работы с этой комбинацией NHibernate, ASP.NET MVC и Dropdown?

Спасибо!

Ответы [ 2 ]

1 голос
/ 27 августа 2009

Я думаю, что это легко сделать с помощью класса ViewModel. Допустим, в вашем приложении есть OrderView , в котором отображается заказ. В этом представлении у вас есть раскрывающийся список «Тип элемента», содержащий список типов элементов.

Модель, которая должна быть передана вашему представлению, должна быть классом, подобным OrderViewModel , который содержит список ItemType объектов. Когда контроллер загружает список объектов ItemType из БД с помощью NHib, он может затем вставить дополнительные «специальные» типы элементов в коллекцию, например, для «--SELECT -».

Другими словами, не привязывайте напрямую к свойству отображения коллекции Nhibernate - используйте Nhibernate для загрузки данных в список, которым вы можете манипулировать по желанию.

0 голосов
/ 17 сентября 2009

Лучший способ получить значение --select-- в Dropdown - это параметр optionLabel, доступный в Html.DropdownList

Затем сохраните "null" в вашей базе данных, и у вас должен быть чистый путь;)

<%= Html.DropDownList("myDropdown",mylist,"--please choose--" %>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...