簡體   English   中英

LINQ groupby到List <List <object >>

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM