LINQ学习笔记
对数据进行排序
方法名 |
说明 |
OrderBy |
按升序对值进行排序。 |
OrderByDescending |
按降序对值进行排序。 |
ThenBy |
按升序执行次要排序。 |
ThenByDescending |
按降序执行次要排序。 |
Reverse |
颠倒集合中的元素的顺序。 |
Set 运算
Distinct
Except
Intersect
Union
方法名 |
说明 |
Distinct |
从集合移除重复值。 |
Except |
返回差集,差集是指位于一个集合但不位于另一个集合的元素。 |
Intersect |
返回交集,交集是指同时出现在两个集合中的元素。 |
Union |
返回并集,并集是指位于两个集合中任一集合的唯一的元素。 |
Filtering Data
方法名 |
说明 |
OfType |
根据值强制转换为指定类型的能力选择值。 |
Where |
选择基于谓词函数的值。 |
限定符操作
方法名 |
说明 |
All |
确定是否序列中的所有元素都满足条件。 |
Any |
确定序列中是否有元素满足条件。 |
Contains |
确定序列是否包含指定的元素。 |
数据分区
运算符名称 |
说明 |
Skip |
跳过序列中的指定位置之前的元素。 |
SkipWhile |
基于谓词函数跳过元素,直到某元素不再满足条件。 |
Take |
提取序列中的指定位置之前的元素。 |
TakeWhile |
基于谓词函数提取元素,直到某元素不再满足条件。 |
联接运算
方法名 |
说明 |
Join |
根据键选择器函数联接两个序列并提取值对。 |
GroupJoin |
根据键选择器函数联接两个序列,并对每个元素的结果匹配项进行分组。 |
数据分组
方法名 |
说明 |
GroupBy |
对共享公共属性的元素进行分组。每个组都由一个 IGrouping<TKey, TElement>对象表示。 |
ToLookup |
根据键选择器函数将元素插入到 Lookup<TKey, TElement> (一个一对多字典)中。 |
生成操作
方法名 |
说明 |
DefaultIfEmpty |
将空集合替换为具有默认值的单一实例集合。 |
Empty |
返回空集合。 |
Range |
生成包含数字序列的集合。 |
Repeat |
生成包含一个重复值的集合。 |
元素操作
方法名 |
说明 |
ElementAt |
返回集合中指定索引处的元素。 |
ElementAtOrDefault |
返回集合中指定索引处的元素;如果索引超出范围,则返回默认值。 |
First |
返回集合中的第一个元素或满足条件的第一个元素。 |
FirstOrDefault |
返回集合中的第一个元素或满足条件的第一个元素。如果没有这样的元素,则返回默认值。 |
Last |
返回集合中的最后一个元素或满足条件的最后一个元素。 |
LastOrDefault |
返回集合中的最后一个元素或满足条件的最后一个元素。如果没有这样的元素,则返回默认值。 |
Single |
返回集合中的唯一元素或满足条件的唯一元素。 |
SingleOrDefault |
返回集合中的唯一元素或满足条件的唯一元素。如果没有这样的元素或集合不是正好包含一个元素,则返回默认值。 |
Converting Data Types
方法名 |
说明 |
AsEnumerable |
返回类型为 IEnumerable< T> 的输入。 |
AsQueryable |
将(泛型) IEnumerable 转换为(泛型) IQueryable。 |
Cast |
将集合的元素强制转换为指定类型。 |
OfType |
根据值强制转换为指定类型的能力筛选值。 |
ToArray |
将集合转换为数组。此方法强制执行查询。 |
ToDictionary |
根据键选择器函数将元素放入 Dictionary< TKey, TValue> 中。 此方法强制执行查询。 |
ToList |
将集合转换为 List<T> 。 此方法强制执行查询。 |
ToLookup |
根据键选择器函数将元素放入 Lookup< TKey, TElement> (一对多字典)中。 此方法强制执行查询。 |
串联运算
方法名 |
说明 |
Concat |
串联两个序列以组成一个序列。 |
聚合操作
方法名 |
说明 |
Aggregate |
对集合值执行自定义聚合运算。 |
Average |
计算值集合的平均值。 |
Count |
对集合中的元素进行计数,还可以仅对满足某一谓词函数的元素进行计数。 |
LongCount |
对大型集合中的元素进行计数,还可以仅对满足某一谓词函数的元素进行计数。 |
Max |
确定集合中的最大值。 |
Min |
确定集合中的最小值。 |
Sum |
计算集合中值的总和。 |