限定操作:

1. All:用来确定是否序列中的所有元素都满足条件

2. Any:用来确定序列是否包含任何元素,有参方式用来确定序列中是否有元素满足条件

3. Contains:方法用来确定序列是否包含满足指定条件的元素

排序:

1. OrderBy:将序列中的元素按照升序排列

2. ThenBy:实现按照次关键字对序列进行升序排列(二级排序)

3. OrderByDescending:将序列中的元素按照降序排列

4. ThenByDescending:实现按照次关键字对序列进行降序排列(二级排序)

5. Reverse:对集合反向排序

分区操作:
1. Skip:跳过集合的前n个元素
2. SkipWhile:直到某一条件成立就停止跳过
3. Take:获取集合的前n个元素
4. TakeWhile:直到某一条件成立就停止获取

聚合操作:
1. Aggregate:对集合值执行自定义聚合运算。例如:把所有值按某个符号间隔输出

2. Average:求集合中元素的平均值,返回值类型double

3. Count:求集合中元素的个数,返回值类型Int32

4. LongCount:求集合中元素的个数,返回值类型Int64

5. Max:求集合中元素的最大值

6. Min:求集合中元素的最小值

7. Sum:求集合中元素的和

集合操作:

1. Distinct:过滤集合中的相同项

2. Union:连接不同集合,自动过滤相同项

3. Concat:连接不同集合,不会自动过滤相同项

4. Intersect:获取不同集合的相同项(交集)

5. Except:从某集合中删除其与另一个集合中相同的项

6. SequenceEqual:判断两个序列是否相等。相等,返回true,否则返回false

元素操作符:
1. Single:返回序列中的唯一一条记录,如果没有或返回多条,则引发异常

2. SingleOrDefault:返回序列中的唯一一条记录,如果序列中不包含任何记录,则返回默认值,如果返回多条,则引发异常

3. First:取序列中满足条件的第一个元素,如果没有元素满足条件,则抛出异常

4. FirstOrDefault:取序列中满足条件的第一个元素,如果没有元素满足条件,则返回默认值(null)

5. ElementAt:返回序列中指定索引处的元素。如果索引超出范围会导致异常

6. ElementAtOrDefault:返回序列中指定索引处的元素;如果索引超出范围,则返回默认值

生成操作:

1. Empty:将返回一个指定类型的空集合,例:var str = Enumerable.Empty<string>();

2. DefaultIfEmpty:将空集合替换为具有默认值的单一实例集合。DefaultIfEmpty方法需要两个参数,第一个参数是一个泛型集合,第二个参数是相应类型的单个元素,如果第一个参数中不含有任何元素,它将返回第二个参数指定的单个元素

3. Range:用于生成指定范围内的整数的序列,例:var temp = Enumerable.Range(0, 10);

4. Repeat:用于生成包含一个重复值的集合,例:var temp = Enumerable.Repeat(0, 10);

C# Linq 常用查询操作符的更多相关文章

  1. LINQ标准查询操作符(三)——Aggregate、Average、Distinct、Except、Intersect、Union、Empty、DefaultIfEmpty、Range、Repeat

    七.聚合操作符 聚合函数将在序列上执行特定的计算,并返回单个值,如计算给定序列平均值.最大值等.共有7种LINQ聚合查询操作符:Aggregate.Average.Count.LongCount.Ma ...

  2. Linq 标准查询操作符三

    本文介绍了LINQ标准查询操作符.没有这些操作符,LINQ就不会存在.本文为理解这些操作符的功能提供了很好的基础.了解它们将会很有帮助,因为LINQ的各种Provider都是基于这些操作符来完成各自丰 ...

  3. LINQ 标准查询操作符

    本文介绍了LINQ标准查询操作符.没有这些操作符,LINQ就不会存在.本文为理解这些操作符的功能提供了很好的基础.了解它们将会很有帮助,因为LINQ的各种Provider都是基于这些操作符来完成各自丰 ...

  4. LINQ标准查询操作符详解(转)

     一. 关于LINQ       LINQ 英文全称是“Language-Integrated Query”,中文为“语言集成查询”,它是微软首席架构师.Delphi 之父和C# 之父——Anders ...

  5. 【LINQ标准查询操作符总结】之聚合操符

    C#  中的LINQ 提供了两种操作方式,查询表达式和查询操作符,所有的查询表达式都有对应的查操作符类替代,查询表达式有点“类” SQL,在代码中写SQL,总觉得不够“优雅”,使用查询操作符就显得“优 ...

  6. LinQ实战学习笔记(四) LINQ to Object, 常用查询操作符

    这一篇介绍了下面的内容: 查询object数组 查询强类型数组 查询泛型字典 查询字符串 SelectMany 索引 Distinct操作符 排序 嵌套查询 分组 组连接 内连接 左外连接 交叉连接 ...

  7. LINQ标准查询操作符(五)

    十二.相等操作符 如果两个序列的对应元素相等且这两个序列具有相同数量的元素,则视这两个序列相等. SequenceEqual方法通过并行地枚举两个数据源并比较相应元素来判断两个序列是否相等.如果两个序 ...

  8. LINQ标准查询操作符(二)——Join、GroupJoin、GroupBy、Concat、

    四.联接操作符 联接是指将一个数据源对象与另一个数据源对象进行关联或者联合的操作.这两个数据源对象通过一个共同的值或者属性进行关联. LINQ有两个联接操作符:Join和GroupJoin. 1. J ...

  9. Linq常用查询运算符

    Linq一共包含五十几个查询运算符,常用的根据类型来区分一共有5类左右,这五类里面一些事在项目查询中经常用到的.不过linq运算符的命名十分规范,基本从字面意思就能猜测出来是干嘛用的,下面我们挑选一些 ...

随机推荐

  1. 如何设置程序UAC控制

    在做项目的过程中,有很多情况会涉及到权限问题,要求必须以管理员的身份才能运行,如何强制我们的程序必须以管理员身份运行呢?在调查的过程中发现有很多方式,此处介绍一种简单的方式. 1.在VS中,右键点击工 ...

  2. Win8 Metro(C#)数字图像处理--2.55OSTU法图像二值化

    原文:Win8 Metro(C#)数字图像处理--2.55OSTU法图像二值化  [函数名称] Ostu法图像二值化      WriteableBitmap OstuThSegment(Writ ...

  3. SqlServer 无法为可更新的订阅设置发布服务器登录名 sp_link_publication

    原文:SqlServer 无法为可更新的订阅设置发布服务器登录名 sp_link_publication 没有截图: 创建可更新订阅,正常创建了发布,在订阅端创建订阅,最后一步提示完成,却出现了警告: ...

  4. Android零基础入门第16节:Android用户界面开发概述

    原文:Android零基础入门第16节:Android用户界面开发概述 相信通过前面15期的学习,Android的开发环境已经基本掌握了,如果仍有问题,欢迎到Android零基础入门技术讨论微信群交流 ...

  5. Qt文档系统分析(解释Qt文档的生成工具与过程)

    写在前面 只要打开Qt Assistant或Qt Creator的Help,或是打开在线版的 http://doc.qt.nokia.com ,Qt的漂亮的文档就会呈现在我们眼前.而且 Qt的文档,长 ...

  6. Windows环境下使用Node.js

    作者:短工邦技术部 - 陈文哲 Parse用的就是Node.js,所以我们要先了解什么是Node.js,以及做一些简单的操作. Node.js 的主要思路是:使用非阻塞的,事件驱动的 I/O 操作来保 ...

  7. Gps坐标有效性判定

    百科:纬度 是指某点与地球球心的连线和地球赤道面所成的线面角,其数值在0至90度之间.位于赤道以北的点的纬度叫北纬,记为N:位于赤道以南的点的纬度称南纬,记为S. var regex = new Re ...

  8. 【Linux】Linux下跟踪记录每个用户对主机服务器进行的操作

    linux中跟踪每个用户对主机的操作,看有人之前已经写过如此shell,可直接参考,参考如下: 1.记录操作信息 这个脚本需添加至/etc/profile 脚本如下: history USER_IP= ...

  9. Python连载15-高阶函数&map映射

    一.高阶函数 1.定义:把函数作为参数使用的函数叫做高阶函数 (1)变量可以设置为赋值 a=100 b=a (2)函数名称就是一个变量 def FunA(): print("FunA()&q ...

  10. Hexo+NexT(六):手把手教你编写一个Hexo过滤器插件

    Hexo+NexT介绍到这里,我认为已经可以很好地完成任务了.它所提供的一些基础功能及配置,都已经进行了讲解.你已经可以随心所欲地配置一个自己的博客环境,然后享受码字的乐趣. 把博客托管到Github ...