привязка выпадающего? - PullRequest
       8

привязка выпадающего?

1 голос
/ 09 ноября 2009

на странице aspx я получаю эту ошибку при привязке выпадающего списка

Невозможно привести объект типа «System.Web.Mvc.SelectList» для ввода 'System.Collections.Generic.IList`1 [System.Web.Mvc.SelectListItem].

Я написал:

<p>
  <label for="categoryId">Category:</label>
  <%= Html.DropDownList("categoryId", (IList<SelectListItem>)ViewData["categoryId"])%>
  <%= Html.ValidationMessage("categoryId", "*")%>
</p>

скажите, пожалуйста, правильный способ написания.

спасибо

Ритц

Ответы [ 2 ]

1 голос
/ 09 ноября 2009

какой код в действии контроллера вы используете для генерации viewdata ["categoryId"], вот что я обычно делаю в коде действия:

ArrayList categoryList=New ArrayList;
       foreach (category c In YourcategoryCollection)
{          categoryList.Add(New With {.Item = c.categoryName, .value = c.categoryID})
}
    Viewdata("categoryId")=New SelectList(categoryList, "Value", "Item", itemToEdit.categoryID)}

и тогда, на ваш взгляд, вам просто нужно:

 <%= Html.DropDownList("categoryId", ViewData["categoryId"])%>
1 голос
/ 09 ноября 2009

Вот хороший пример того, чего вы пытаетесь достичь:

Как связать IList с полем выпадающего списка MVC

Похоже, вам придется добавить код с выделенным кодом для создания совместимого типа списка.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...