Linq的查询操作符

Linq有表达式语法和调用方法的语法。两者是可以结合使用,通常情况下也都是结合使用。表达式语法看上去比较清晰而调用方法的语法实现的功能更多,在此文章中介绍的是表达式语法。方法语法可以看System.Linq等命名空间下的扩展方法。Linq只能用于实现了IEnumerable或IEnumerable<T>接口的类,也就是可以用foreach的类都可以用linq。

注意在3.5和4.0版本上linq的关键字有些区别,下文是以4.0为准的。

1.投影操作符

  select:对集合和序列中的值进行投影。from c in contact select c;

2.限制操作符

  where:和sql语句中where一样用来过滤数据。from c in contact where c.Lastname="Josn" select c;

3.排序操作符

  OrderBy:将返回值按照升序的顺序排序。from c in contact orderby c.Lastname select c;

  OrderBy Descending:将返回值按照降序的顺序排序。from c in contact orderby c.Lastname descending select c;

3.连接操作符

  join:可以将多个数据源连接。from c in contact join e in employee on c.ID equals e.ContactID select c;

4.分组操作符

  groupby:根据一个特定值将数据源中的值进行分组。类似于sql语句中的group by。from c in contact groupby (c=>c.Nationality) select c;

posted on 2015-08-31 15:47  路漫席而求索  阅读(313)  评论(0编辑  收藏  举报