有两种形式的语法可供我们在写LINQ查询的时候使用,分别是查询语法和方法语法。
1,查询语法和方法语法的介绍?
查询语法:是声明形式的,看上去和SQL语句很相似,查询语法使用查询表达式形式书写。
方法语法:是命令形式的,它使用的标准的方法调用。方法是一组叫做标准查询运算符的方法。
注:1> 在一个查询中可以使用两种方法的组合。
2> 查询表达式使用的查询语法会被C#编译器转换为方法调用的形式,这两种形式在运行时性能上没有任何区别。
2,查询语法和方法语法在LINQ查询中的使用?
例如:
1 class Program
2 {
3 static void Main(string[] args)
4 {
5 int[] numbers = { 2,5,28,31,17,16,42};//声明数组作为数据源。
6
7 var numsQuery = from n in numbers //查询语法(查询表达式)
8 where n < 20
9 select n;
10
11 var numsMethod = numbers.Where(x=>x<20);//方法语法(标准查询运算符)
12
13 int numsCount = (from n in numbers//两种形式的组合
14 where n < 20
15 select n).Count();
16
17 //遍历集合numsQuery
18 foreach (var x in numsQuery)
19 {
20 Console.Write("{0},",x);
21 }
22 Console.WriteLine();
23
24 //遍历集合numsMethod
25 foreach (var x in numsMethod)
26 {
27 Console.Write("{0},",x);
28 }
29 Console.WriteLine();
30
31 Console.WriteLine("{0}",numsCount);
32
33 Console.ReadKey();
34 }
35 }
36 /*
37 程序输出结果为:2,5,17,16
38 2,5,17,16
39 4
40 */
以上结合实例对查询语法和方法语法做了一个简单的了解,后面结合实际的LINQ查询再深入地学习查询语法和方法语法,今天就总结到这里,明天晚上继续写查询变量和查询表达式的结构,哎呀,快到10点了,得早点休息了,明天星期六还得上班啊!