asp.net-mvc-4 – MVC 4 DropDownListFor错误 – 没有具有密钥的’IEnumerabl
我有一个模特: public class Auction { public string Title { get; set; } public string category { get; set; } } 和控制器: [HttpGet] public ActionResult UserForm() { var categoryList = new SelectList(new[] { "auto","elec","games","Home" }); ViewBag.categoryList = categoryList; return View(); } 在视图中我有以下几行: <div class="editor-field"> @Html.DropDownListFor(model => model.category,(SelectList)ViewBag.categoryList) @Html.ValidationMessageFor(model => model.category) </div> 我尝试保存表单时遇到的错误是:
我不明白是什么问题,因为我做了(或试图做)本指南中完成的所有事情: 该视频也可以在此链接中找到(第6章 – 自动绑定到请求中的数据): 解决方法
这就是你的问题所在.我怀疑你没有在post方法中重建你的列表. get方法中的以下代码行也应该在post方法中,特别是如果要返回相同的视图,或者在下拉列表中使用ViewBag.categoryList的视图. var categoryList = new SelectList(new[] { "auto","Home" }); ViewBag.categoryList = categoryList; 当您使用带有dropdownlistfor html帮助器的null对象时,会出现这种错误.如果您执行类似的操作,则可以轻松复制该错误 @Html.DropDownListFor(model => model.PropertyName,null) // or @Html.DropDownList("dropdownX",null,"") (编辑:十堰站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net-mvc – 在ASP.NET MVC中实现工作单元的方法
- ASP.NET通过自定义函数实现对字符串的大小写切换功能
- ASP.NET MVC学习教程之Razor语法
- asp.net – 按钮属性: – commandName和CommandArguments
- asp.net – 使用SignalR编译项目时,我必须做一个iisreset
- ASP.NET页面在IE缓存的清除办法
- ASP.NET Core中实现用户登录验证的最低配置示例代码
- asp.net – 如何MSDeploy构建的网站包到一个处女IIS网站
- 如何重定向到ASP.NET MVC中的调用页面?
- asp.net-mvc-3 – 如何在ASP.NET MVC中创建递归结构
- asp.net-web-api – WebAPI中的长时间运行任务
- asp.net-mvc – 从Api控制器内生成绝对的url to
- 修改服务器配置 让asp.net文件后缀名随心所欲
- asp.net-mvc-4 – .net 4.5 ASP.Net web API JSO
- asp.net – 使用FormsAuthentication持久的cooki
- asp.net-mvc-3 – MVC3正确的方式来改变每个请求
- asp.net-mvc – TempData在第二个请求后不会被破
- ASP.NET C#ListBox服务器控件不会禁用
- asp.net-mvc-3 – 为MVC3应用程序配置Ninject的正
- ASP.NET清空缓存时遇到的问题简析