LINQ
基本概念
- 语言集成查询(Langrage Integrated Query)
- 常见用途
- .Net原生集合(List,Array,Dictionary,etc.)
- SQL数据库(EF等ORM尤其适配)
- XML文档(xmlelement,xelement)
- JSON文档(Newtonsoft)
- 常见功能
- 排序、筛选、选择
- 分组、聚合、合并
- 最大值、最小值、求和、求平均、求数量
- ......
- 两种形式
var lst = new List<int> {1,2,3,10,5,7,9,2,4,6,8,0};
var res = lst
.Where(l => l>=4 && l%2==0)
.OrderBy(x => x)
.Select(n=>n);
res.Dump();
var res1 = from x in lst
where x %2==0 && x >=4
orderby x
select x;
res1.Dump();
var arr1 = new int[] {1,2,3,4,5,6};
var arr2 = new int[] {4,5,6,7,8,9};
var res = arr1.Intersect(arr2);//intersect是linq方法之一,会返回两个数组的交集
res.Dump();//结果为4,5,6