【发布时间】:2011-02-20 10:00:47
【问题描述】:
在 Stack Overflow 上有几篇关于此的帖子,但没有一个答案似乎可以解决我当前情况下的问题。
我有一个页面,其中有一个表格,每一行都有一些文本字段和一个下拉列表。所有的下拉菜单都需要使用相同的 SelectList 数据,所以我设置如下:
控制器
ViewData["Submarkets"] = new SelectList(submarketRep.AllOrdered(), "id", "name");
查看
<%= Html.DropDownList("submarket_0", (SelectList)ViewData["Submarkets"], "(none)") %>
我在很多地方都使用过这个设置,但由于某种原因,在这个特定的视图中我得到了错误:
没有具有键“submarket_0”的“IEnumerable”类型的 ViewData 项。
【问题讨论】:
-
你试过了吗?
<%= Html.DropDownList("submarket_0", ((SelectList)ViewData["Submarkets"]).Items, "(none)") %>DropDownList 采用IEnumerable<SelectListItem>。 -
@LukLed - 这确实是我最终找到错误来源的方式:) 以及来自其他一些帖子的信息!谢谢
-
<%= Html.DropDownList("submarket_0", ViewData["Submarkets"] as IEnumerable<SelectListItem>, "(none)") %> -
今天遇到这个问题,发现我的 DropDownList 助手中的第二个参数为空,根据@jonathansewell 的以下发现。
标签: asp.net-mvc ienumerable drop-down-menu viewdata selectlist