asp.net-mvc – 将DropDownListFor绑定到字典
发布时间:2020-11-17 12:25:35 所属栏目: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 – 我应该在.gitingore文件中包含.vs文件夹吗?
- asp.net 自动将汉字转换成拼音第一个字母
- ASP.net WebAPI跨域调用问题的解决方法
- asp.net-mvc – ASP.NET MVC 3 Treeview
- 隐藏ASP.NET菜单项
- 为熟悉ASP.NET Web表单开发的人建议MVC3的周末学习轨道
- asp.net – Orchard CMS和Sitefinity CMS
- asp.net-mvc – 使用与本地化更改冲突的自定义数据注释进行
- asp.net-mvc – ASP.NET MVC中的WebApi [FromUri]是什么?
- asp.net全局资源错误’找不到具有键”的资源对象’
推荐文章
站长推荐
- asp.net-mvc – ELMAH和SQL Server 2008 R2?
- asp.net-mvc – ASP.NET MVC项目架构
- asp.net-mvc – LabelFor和TextBoxFor不生成相同
- asp.net – LINQ:不支持查询运算符’ElementAtO
- asp.net-mvc – 我如何moq aingleingleResult?我
- asp.net – WebFormsMVP的缺点?
- asp-classic – 如何使用Microsoft.XMLHTTP指定代
- asp.net-mvc – Asp.Net MVC CSLA DDD可能
- 什么用于ASP.NET的成员资格
- asp.net-mvc-2 – 如何在ASP.NET MVC2中为Html.L
热点阅读
