【发布时间】:2017-09-09 00:37:38
【问题描述】:
MVC 和 Linq 的新手。
我能够很好地显示所有记录,但现在我试图按名称获取记录计数,并且只需选择 2 个字段:名称和计数
我想我应该创建一个新的 ViewModel,填写 Name、Count 并将其发送到视图。
public ActionResult Index()
{
var load =
db.loadingPPHs.Where(s => s.WORKDAY == db.loadingPPHs.Max(x => x.WORKDAY))
.GroupBy(fu => fu.TMNAME)
.Select(g => new {Name = g.Key, Count = g.Count()}).ToList();
var viewModel = new loadingViewModel
{
LoadingListCount = load
};
return View(viewModel);
}
上面的 linq 按预期工作。 视图模型:
public class loadingViewModel
{
public IEnumerable<LoadingListCount> LoadingListCount { get; set; }
}
public class LoadingListCount
{
public string Name{ get; set; }
public int Count { get; set; }
}
但是,我遇到了一个错误。无法将类型“System.Collections.Generic.List”隐式转换为“System.Collections.Generic.IEnumerable”。存在显式转换(您是否缺少演员表?)
我尝试将查询转换为列表和 IEnumerable,但没有运气。我搜索了其他帖子,但我没有运气。
【问题讨论】:
标签: c# asp.net-mvc entity-framework linq