[英]LINQ groupby to List<List<object>>
我有一个ASP.NET MVC视图,我使用LINQ将模型拆分为多个对象列表。
下面的代码的工作原理是我在var data
获得了正确的对象列表,但我无法将其转换为我的对象来访问属性。 我收到错误
无法转换类型为'Grouping [<> f__AnonymousType3'2 [System.DateTime,System.String],MVCProj.Models.tblData2017]'的对象,以输入'MVCProj.Models.tblData2017
Index.cshtml查看:
@model IEnumerable<MVCProj.Models.tblData2017>
@{
ViewBag.Title = "Index";
}
<h2>Title</h2>
@{
var data = Model.Where(x => x.Start.Date == DateTime.UtcNow.Date)
.GroupBy(x => new { x.Start, x.Field2 }).ToList();
for (int i = 0; i < data.Count; i++)
{
var rowItem = (List<tblCards2017>)data[i]; //<-Error on this line
string header1 = $"{rowItem.Start.ToString("HH:mm")} {rowItem.Field2}";
}
}
我该怎么做以下任何一种情况
i)成功地转换var rowItem = (List<tblCards2017>)data[i];
要么
ii)使用linq获取正确的对象类型List<List<tblCards2017> data = Model.Where.....
而不是当前类型var data = System.Collections.Generic.List<System.Linq.IGrouping<<>f__AnonymousType2<System.DateTime, string>, MVCProj.Models.tblData2017>>
我想你看这个:
var data = Model.Where(x => x.Start.Date == DateTime.UtcNow.Date)
.GroupBy(x => new { x.Start, x.Field2 })
.Select(g=>g.ToList()).ToList();
添加“ Select
调用以获取每个组的列表
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.