加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

model-view-controller – MVC2 ViewData问题

发布时间:2020-12-16 09:31:18 所属栏目:asp.Net 来源:网络整理
导读:我正在尝试通过ViewData将一些项目列表传递给视图以创建下拉列表.这应该不会太难,但我是MVC的新手,所以我可能会遗漏一些明显的东西. 控制器将列表分配给ViewData: ViewData["ImageLocatons"] = new SelectList(gvr.ImageLocations); 并且视图尝试将其呈现到
我正在尝试通过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.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读