Используйте DataAnnotations, чтобы вызвать DropDownList, заполненный из моей модели - PullRequest
0 голосов
/ 05 мая 2011

Есть ли способ использовать DataAnnotations, чтобы сказать Razor визуализировать DropDownList и заполнить варианты выбора из определенного поля в конкретной сущности?

В частности, я фиксирую свойство «Календарный год» в своем представлении и хотел бы, чтобы оно было DropDownList. Я делаю это в настоящее время, передавая годы в моем представлении через ViewBag и затем вызывая «DropDownListFor». Я надеялся найти способ определить его в моей ViewModel, и они просто вызывают «EditorFor».

Спасибо!

1 Ответ

1 голос
/ 06 мая 2011

Я не могу найти способ сделать это с помощью DataAnnotation, но вам не нужно использовать ViewBag, вы можете передать значения следующим образом:

@Html.ListBoxFor(m => m.SelectedFoos, Model.AllFoos.Select(f => new SelectListItem { Text = f.Name, Value = f.ID })) 

(Примечание:При этом используется ListBox, взятый из ответа здесь , но должен быть аналогичным для DropDownList).

...