一.概述
LINQ表示语言集成查询,它包括用于从数据源检索信息的一组功能。数据检索是许多程序的重要组成部分。C#通过一组互相关联的功能支持LINQ。这些功能包括C#语言中新增的查询语法、表达式、匿名方法和扩展方法。
LINQ的核心是查询,查询指定从数据源获得哪些数据。使用查询时,首先必须创建某种形式的查询,然后执行该查询。执行查询的一种方法是在foreach循环中使用查询。
第一步:using System.Linq;
第二步:从from关键字开始,而以select或group子句结束。group子句则分组返回数据,其中每个组能够列举。where子句指定某种条件,查询只会返回满足该条件的项。
例:from x in list select x;
二.具体使用
where子句用于筛选查询返回的数据。前面的示例只使用了一条where子句。其实,可以使用多条where子句。
我们通常需要排序查询结果,这样就使用到了orderby子句。orderby子句按照一种或多种标准排序结果。
select子句确定查询获得何种类型的元素,它的通用形式如下图所示。
使用嵌套的from子句
其中,A和B表示两个不同的数据源。
例子:
List<string> fruits = new List<string> { "apple", "passionfruit", "banana", "mango", "orange", "blueberry", "grape", "strawberry" }; IEnumerable<string> query = fruits.Where(fruit => fruit.Length < 6); foreach (string fruit in query) { Console.WriteLine(fruit); } /* This code produces the following output: apple mango grape */