江枫

学一下LINQ吧

   实在是烦死每次要自己写循环找东西了~

1.选择查找(where)

   where查询用来查找满足要求的内容,会返回一个迭代器,可以foreach遍历迭代器,也可以tolist把查询结果转成一个新的List存储。

2.简单的计算(min,max,sum,average,count)

   一些简单的数据计算也可以使用linq进行计算(结果类型与匿名函数的查找类型相同):

3.排序(orderby)

   排序与筛选功能

4.取第一个/最后一个元素(First,Last)

   取列表中的第一个元素,有两个接口,FirstOrDefaultFirst ,主要区别就是first在取不到的时候会抛出异常,FirstOrDefault在没取到的时候返回null

5.跳过数据,取指定数量数据(skip,take)

   比如对指定数据进行分页查询,比如第一页显示10条数据,现在要查第二页的数据(取第11到20条数据)

6.选择指定数据(select)

   当你只想查元素内的指定一种数据时,可以使用select进行查询,返回的将是一个指定类型的迭代器

7.查询特定类型(oftype)

   例如我有一个object的list,其中元素存储了string和int,那么我可以使用oftype获取我想要的类型

8.去重(Distinct)

   这个去重只能对元素进行去重

   如果想要根据元素内的某个字段进行去重,需要自己实现一下IEqualityComparer接口。实现其中的Equals函数进行想要的去重逻辑。

9.判断是否满足条件(Any,All)

   Any:只要存在满足条件的则为true.
   All:全都满足条件才返回true.

10.将一个集合与另一个集合用指定建合并,返回合并后的集合(Join)

   Join使用了两个集合,需要两个集合的查找器,以及最后结果的迭代器。

文章大纲