Linq-链式调用
1.集合转换
IEnumerable<Employee> items = list.Where(it => it.Salary > 3000);
List<Employee> listE = items.ToList();
Employee[] arrayE = items.ToArray();
2.链式调用
需求:获取id>2的数据然后按照Age分组,将分组按照Age排序,取出前3条,在投影取得年龄、人数、平均工资
var items = list.Where(it => it.Id > 2).GroupBy(it=>it.Age).OrderBy(it=>it.Key).Take(3).Select(it=>new {Nianling = it.Key,RenShu=it.Count(),AvgS=it.Average(g=>g.Salary) });
foreach (var item in items)
{
Console.WriteLine($"Nianling={item.Nianling},RenShu={item.RenShu},AvgS={item.AvgS}");
}
3.还有一种写法
以上这种叫做 “方法语法”,还有一种叫做“查询语法”,用的比较少