asp.net-mvc – 将DropDownListFor绑定到字典
发布时间:2020-11-14 08:00:26 所属栏目: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-mvc – 如何在我自己的自定义助手中使用ASP.NET MV
- 谈谈.NET Core中基于Generic Host来实现后台任务
- 我是否需要在asp.net中取消订阅(手动订阅)活动?
- 为什么私有事件处理程序在ASP.NET中不起作用
- asp.net-mvc-3 – DropDownListFor Unobtrusive Validation
- asp.net – 如何使用javascript生成假回发?
- WPF 一个数据库连接测试的实现
- asp.net-mvc – SSL握手问题? (当时:网页挂起,只清除浏览
- Asp.Net 文件操作基类(读取,删除,批量拷贝,删除,写入,获取文
- asp.net – CookieContainer和Response.Cookies集合有什么区
推荐文章
站长推荐
- asp.net-mvc-3 – MVC3非顺序索引和DefaultModel
- asp.net – MVC 4导出到CSV – 另存为对话框在Ch
- asp.net – 在IHTTPHandler中以编程方式创建Syst
- Asp.net超链接控件相当于
- asp.net-mvc – ASP .Net MVC 3:子动作和重定向
- asp.net ajax实现无刷新验证码
- 有标签的ASP.NET WebControl吗?
- asp.net-mvc – Mvc 3 Razor:使用部分部分视图?
- asp.net – 多个域的集成Windows身份验证
- asp.net – 有没有比升级到Visual Studio 2010 U
热点阅读
