使用Linq将数组分组到数组中

时间:2014-10-14 16:27:58

标签: linq c#-4.0

我可以使用下面的代码按照有效数组中的ID属性进行分组。

var docArray = MyArray;                                                        

var docGroup = docArray.GroupBy(x => x.ID)
    .Select(grp => new
    {
        Id = grp.Key,
        Results = grp.ToList(),
    }).ToList();

如果MyArray中有另一个数组,其中有一个属性,说数据有些可以请告诉我如何根据数据属性进行分组。

class MyArray
{
    SecondArray[] arr = new SecondArray[2];
    public int ID{get;set;}   
}

class SecondArray
{
    public string Data{ get; set; }   
}

1 个答案:

答案 0 :(得分:2)

var query = from a in docArray
            from b in a.arr
            group new { a, b } by b.Data into g
            select new
            {
              g.Key,
              Results = g.ToList()
            };