当前位置 : 主页 > 网络编程 > ASP >

model-view-controller – MVC2 ViewData问题

来源:互联网 收集:自由互联 发布时间:2021-06-24
我正在尝试通过ViewData将一些项目列表传递给视图以创建下拉列表.这应该不会太难,但我是MVC的新手,所以我可能会遗漏一些明显的东西. 控制器将列表分配给ViewData: ViewData["ImageLocatons
我正在尝试通过ViewData将一些项目列表传递给视图以创建下拉列表.这应该不会太难,但我是MVC的新手,所以我可能会遗漏一些明显的东西.

控制器将列表分配给ViewData:

ViewData["ImageLocatons"] = new SelectList(gvr.ImageLocations);

并且视图尝试将其呈现到下拉列表中:

<%= Html.DropDownList("Location", ViewData["ImageLocations"] as SelectList) %>

但是,当我运行它时,我收到此错误:
没有类型为“IEnumerable”的ViewData项具有“位置”键.

任何想法为什么这不起作用?此外,它不应该寻找关键的“ImageLocations”而不是位置?

如果您使用:

ViewData["Location"] = new SelectList(gvr.ImageLocations);

<%= Html.DropDownList("Location") %>

你的生活会轻松多了.

在示例中设置ViewData时,还要查看拼写错误(缺少i)(ImageLocatons => ImageLocations).这会导致传递给DropDownList的第二个参数为null.这将导致MVC引擎搜索Location.

网友评论