DropDownListFor внутри ForEach

1

У меня есть модель, которая имеет List<SelectListItem> который содержит список третьих сторон.

На мой взгляд, мне нужно пройти через список и создать DropDownList для этих данных на основе идентификатора, который у меня есть, называемого "SelectedEntityId".

Я делаю официальное ForEach:

@foreach (строка var в Model.Lines) {

И затем, я пытаюсь сделать свой выпадающий список:

@Html.DropDownListFor(x=>line.SelectedEntityId, new SelectList(Model.ThirdParties, "Value", "Text"), "Select One", new{@class="form-control"})

Тем не менее, хотя я вижу (в режиме отладки), что значение "SelectedEntityId" имеет значение 5 (в данном случае), и что Model.ThirdParties имеет это значение элемента - выпадающее меню не отображает этот элемент, а скорее его в разделе "Выбрать один".

Я думаю, что возможно мой синтаксис x=>line.SelectedEntityId неверен?

Я получаю предупреждение о слове "строка" там, говоря "Access to foreach variable in closure. May have different behaviour when compiled with different versions of compiler."

Могу ли я сделать это в foreach и ссылаться на значение элемента в моем foreach?

  • 2
    Может быть, не связано, но если ThirdParties уже IEnumerable<SelectListItem> почему вы создаете новый SelectList из него? Обратите внимание, что это не будет отправлять обратно правильно, так как все выпадающие списки будут иметь одинаковый атрибут name - для этого вам нужен цикл for чтобы элементы управления были правильно проиндексированы
  • 0
    Просто используйте for цикла вместо цикла foreach .
Показать ещё 2 комментария
Теги:
asp.net-mvc
asp.net-mvc-3

1 ответ

0

что line здесь. Поскольку я знаком, это должно быть как x=>x.SelectedEntityId но код x=>x.SelectedEntityId - это хорошо, и он должен хорошо угадывать, что у вас есть поля Value и Text в вашем списке. я видел некоторые примеры, слишком связанные с этим, посмотрите ниже ссылки, если вы все еще сталкиваетесь с какой-то проблемой.

HTML-dropdownlistfor

вопрос о переполнении стека

Ещё вопросы

Сообщество Overcoder
Наверх
Меню