Linq命名空间和程序集信息 命名空间使用:System.Linq 使用程序集信息:System.Core.dll 程序集 Lambda表达式在前面的示例中,通知该条件表达式 (num % 2 == 0) 是作为内联参数。Where 方法:Where(num =>num % 2 == 0).此内联表达式称为lambda 表达式。 将代码编写为匿名方法或泛型委托或表达式树是一种便捷的方法,否则编写起来就要麻烦得多。 在 C# 中,=> 是 lambda 运算符,可读为“goes to”。 运算符左侧的 num 是输入变量,与查询表达式中的 num 相对应。编译器可推断 num 的类型,因为它了解 numbers 是泛型IEnumerable<T> 类型。 lambda 表达式与查询语法中的表达式或任何其他 C# 表达式或语句中的表达式相同;它可以包括方法调用和其他复杂逻辑。 “返回值”就是表达式结果。
First 普通查询Var enum= from 子项 in 源 Where条件 Select 子项 意思是将查询出来的单条数据赋值给子项并添加到enum中。 Two 查询排序 方法名 | | | | | OrderBy | | | Enumerable.OrderBy
Queryable.OrderBy
| | OrderByDescending | | | Enumerable.OrderByDescending
Queryable.OrderByDescending
| | ThenBy | | | Enumerable.ThenBy
Queryable.ThenBy
| | ThenByDescending | | Orderby …,… thenbydescending | Enumerable.ThenByDescending
Queryable.ThenByDescending
| | Reverse | | | | Enumerable.Reverse<TSource>
Queryable.Reverse<TSource>
| | | | | | | | | | | | |
查询语法用例: String[] words={“the”,”quick”,”brown”,”fox”,”jumps”}; IEnumerable<string> query= from wordin words Orderbyword.substring(0,1) descending Selectword; Foreach(string str in query) Console.WriteLine(str);
|