asp.net-mvc – 将DropDownListFor绑定到字典
发布时间:2020-11-17 12:54:09 所属栏目:asp.Net 来源:互联网
导读:我正在创建和填充字典,并希望使用 DropDownListFor帮助方法将其绑定到下拉列表. 如何将该字典的键和值映射到下拉列表? 看起来我应该可以做类似的事情: @Html.DropDownListFor(o = o.key, o = o.value, MyDictionary); 看起来第一个参数应该是映射键/值对的L
我正在创建和填充字典,并希望使用 DropDownListFor帮助方法将其绑定到下拉列表. 如何将该字典的键和值映射到下拉列表? 看起来我应该可以做类似的事情: @Html.DropDownListFor(o => o.key,o => o.value,MyDictionary); 看起来第一个参数应该是映射键/值对的LINQ语句,第二个参数是字典本身. 解决方法您无法将下拉列表绑定到字典.这没有意义.为了生成下拉列表,您需要两件事:一个用于绑定所选值的标量属性和一个用于绑定下拉列表选项的集合.你只有这两件事中的第二件就是字典.所以你不能使用强类型帮助器.你可以做以下丑陋: @Html.DropDownList("SelectedValue",new SelectList(MyDictionary,"Key","Value")) 但当然更好的方法是使用视图模型: public class MyViewModel { public string SelectedValue { get; set; } public SelectList Values { get; set; } } 您将在控制器操作中填充: public ActionResult Foo() { Dictionary<string,string> dic = ... var model = new MyViewModel { Values = new SelectList(dic,"Value") }; return View(model); } 最后在你的强类型视图中: @model MyViewModel @Html.DropDownListFor(x => x.SelectedValue,Model.Values) (编辑:哈尔滨站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net+js实现批量编码与解码的方法
- asp.net – “2015年4月20日Google帐户的OpenID2已经消失”
- asp.net-mvc – 如何将ASP.Net MVC路径段中的1或0映射到布尔
- asp.net-mvc – Domain Driven Design新手,请简要解释’价值
- Asp.net配合easyui实现返回json数据实例
- VS 2013 RC中缺少ASP.NET Web窗体脚手架功能
- asp.net-mvc – 文件上传MVC
- asp.net – UserControl Viewstate在回发后丢失所有值
- asp.net-mvc – ControllerActionInvoker
- 序列化 – Newtonsoft中的TypeNameHandling需要$type作为第
推荐文章
站长推荐
- asp.net – 使用FormsAuthentication持久的cooki
- ASP.net WebAPI跨域调用问题的解决方法
- asp.net-mvc-3 – 大量使用ViewBag
- ASP.NET成员资格 – 让用户使用以前的密码
- asp.net-mvc – MVC 5:Asp.net身份:如何建模Us
- 什么是链接服务器的ASP.NET连接字符串格式?
- asp.net-mvc – ASP.Net 5中缺少FormCollections
- asp.net html控件的File控件实现多文件上传实例分
- asp.net-mvc – Asp.Net MVC CSLA DDD可能
- .net – 什么可以解释托管堆上超过5,000,000个Sy
热点阅读