group
group子句将数据源中的数据进行分组,示例代码如下:
var str = from p in PersonList group p by p.age
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace linq
{
class student //定义数据源
{
public string name { get; set; }
public int age { get; set; }
public int sex { get; set; }
}
class Program
{
static void Main(string[] args)
{
var items = new List<student>(); // 要查询的数据源
items.AddRange(new student[]
{ new student{name="Tom",age=20,sex=1},
new student{name="Jim",age=23,sex=1},
new student{name="John",age=24,sex=1},
new student{name="Marry",age=22,sex=0},
new student{name="Lucy",age=21,sex=0}
});
//按 sex 字段进行分组
var data = from a in items group a by a.sex ;
foreach (var ss in data)
{
Console.WriteLine(ss.Key); // 输出分组关键字
foreach (var s in ss)
{
Console.WriteLine(s.name); // 输出分组的各项内容
}
}
}
}
}