На Stack Overflow есть несколько сообщений об этом, но ни один из них не содержит ответа, который, похоже, решает проблему в моей текущей ситуации.
У меня есть страница с таблицей, в каждой строке есть несколько текстовых полей и раскрывающийся список. Все раскрывающиеся списки должны использовать одни и те же данные SelectList, поэтому я настроил их следующим образом:
Контроллер
ViewData["Submarkets"] = new SelectList(submarketRep.AllOrdered(), "id", "name");
Посмотреть
<%= Html.DropDownList("submarket_0", (SelectList)ViewData["Submarkets"], "(none)") %>
Я использовал именно эту настройку во многих местах, но по какой-то причине в этом конкретном представлении я получаю сообщение об ошибке:
Нет элемента ViewData типа «IEnumerable» с ключом «submarket_0».
<%= Html.DropDownList("submarket_0", ((SelectList)ViewData["Submarkets"]).Items, "(none)") %>
DropDownList принимаетIEnumerable<SelectListItem>
.