【发布时间】:2011-04-19 01:51:20
【问题描述】:
当使用一个使用 IEnumerable 的 MVC 3 集合时,有没有办法让小型查询能够找到单个值?我一直在尝试,但收效甚微。
我有一组包含描述和设置的设置。问题是暴露其中一个,因为每个都是独一无二的。我尝试过这样的事情:
var appl = _service.GetSettings(id, app); //Call to service layer & repository
appl.Select(a => a.setting_value.Where(a.setting_name.StartsWith("Login")));
收效甚微(除非我遗漏了什么)。是否可以从可枚举集合中选择一项并将其传递给 ViewBag 或 ViewData 对象?我想做的是如下所示:
var appl = _service.GetSettings(id, app); //Call to service layer & repository
ViewBag.Login = appl.Select(a => a.setting_value.Where(a.setting_name.StartsWith("Login")));
并将其传递给视图,因为我现在有一个视图,它现在将集合与单个值组合在一起。
以下似乎在视图中起作用:
Application Name @Html.TextBox("application_name", @Model.FirstOrDefault().app_name)
但我不确定这是否违反了关注点分离。我在这里走错路了吗?谢谢!
编辑:这是我需要的。下面的答案让我非常接近+1 +1
ViewBag.Login = appl.Where(a => a.setting_name.StartsWith("Login")).FirstOrDefault().setting_value
【问题讨论】:
标签: asp.net-mvc-3 razor html-helper