我得到了一个定义为IEnumerable< Myviewmodel>的模型.我试图用它来创建一个选择列表(
Html.SelectListFor).但我无法弄清楚如何做到这一点.这让我看一下普通的Html.SelectList方法.
因为它想要一个IEnumerable< SelectListITem>我不希望在我的控制器或逻辑中添加视图特定逻辑在我的视图中我最终创建了以下扩展方法:
public static class ExtensionMethods { public static IEnumerable<SelectListItem> ToSelectList<T>(this IEnumerable<T> items,Func<T,string> valueSelector,string> textSelector) { return items.Select(item => new SelectListItem { Text = textSelector(item),Value = valueSelector(item) }).ToList(); } }
我用它作为:
@Html.DropDownList("trainid",Model.ToSelectList(item => item.Id,item => item.Name));
这似乎不是最佳解决方案.我该怎么办?
解决方法
猜猜答案是我已经在使用最好的解决方案了.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。