Є кілька дописів про це на 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>
.