Joe*_*Joe 3 model-view-controller asp.net-mvc-2
我正在尝试通过ViewData将一些项目列表传递给视图以创建下拉列表.这应该不会太难,但我是MVC的新手,所以我可能会遗漏一些明显的东西.
控制器将列表分配给ViewData:
ViewData["ImageLocatons"] = new SelectList(gvr.ImageLocations);
Run Code Online (Sandbox Code Playgroud)
并且视图尝试将其呈现到下拉列表中:
<%= Html.DropDownList("Location", ViewData["ImageLocations"] as SelectList) %>
Run Code Online (Sandbox Code Playgroud)
但是,当我运行它时,我收到此错误: 没有类型为'IEnumerable'的ViewData项具有键'Location'.
任何想法为什么这不起作用?此外,它不应该寻找关键的"ImageLocations"而不是位置?
如果您使用:
ViewData["Location"] = new SelectList(gvr.ImageLocations);
Run Code Online (Sandbox Code Playgroud)
和
<%= Html.DropDownList("Location") %>
Run Code Online (Sandbox Code Playgroud)
你的生活会轻松多了.
i在示例中设置ViewData时,还要检查拼写错误(缺失)(ImageLocatons => ImageLocations).这会导致您传递给DropDownList的第二个参数null.这将导致MVC引擎搜索Location.
| 归档时间: |
|
| 查看次数: |
4097 次 |
| 最近记录: |