成都摄影网站建设,重庆企业网站推广平台,中小型网站建设行情,seo是什么意思啊电商LINQ 语法非常好#xff0c;但其作用是什么#xff1f;我们只要查看源数组#xff0c;就可以看出需要的结果#xff0c;为什么要查询这种一眼就能看出结果的数据源呢#xff1f;有时查询的结果不那么明显#xff0c;在下面的示例中#xff0c;就创建了一个非常大的数字数… LINQ 语法非常好但其作用是什么我们只要查看源数组就可以看出需要的结果为什么要查询这种一眼就能看出结果的数据源呢有时查询的结果不那么明显在下面的示例中就创建了一个非常大的数字数组并用 LINQ 查询它。(1) 与以前一样创建项目时Visual Studio 会自动在Program.cs 中包含 Linq 名称空间。using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;(2) 在 Main() 方法中添加如下代码:static void Main(string[] args)
{int[] numbers GenerateLotsOfNumbers(12345678);var queryResults from n in numbers where n 1000 select n;Console.WriteLine(Numbers less than 1000:); foreach (var item in queryResults){Console.WriteLine(item);}Console.Write(Program finished, press Enter/Return to continue:); Console.ReadLine();
}3添加如下方法生成一个随机数列表:private static int[] GenerateLotsOfNumbers(int count)
{Random generator newRandom(0); int[] result new int[count]; for (int i 0; i count; i){result[i] generator.Next();}return result;
}4编译并执行程序。结果是一个小于 1000 的数字列表如下所示Numbers less than 1000:
714
24
677
350
257
719
584
Program finished, press Enter/Return to continue:示例的说明与前面一样第一步是引用 System.Linq 名称空间这是在创建项目时由 Visual Studio 自动引用的:using System.Ling接着创建一些数据本例中是创建并调用 GenerateLotsOfNumbers() 方法int[] numbers GenerateLotsOfNumbers(12345678);
private static int[] GenerateLotsOfNumbers(int count)
{Random generator new Random(0); int[] result new int[count]; for (int i 0; i count; i){result[i] generator.Next();}return result;
}这不是一个小数据集数组中有1200万个数字需要修改传送给GenerateLotsOfNumbers() 方法的 size 参数生成数量不同的随机数看看这会对查询结果有什么景响。这里的 size 参数12 345 678非常大足以生成一些小于1 000的随机数从而获得为第一个查询显示的结果。数值应随机分布在有符号的整数范围内(从 0 到超过 20 亿)。用种子值 0 创建随机数生成器可以确保每次创建相同的随机数集合这是可以重复的所以会获得与此处相同的查询结果但在尝试一些查询之前并不知道查询结果是什么。而LINQ 使这些查询很容易编写。查询语句本身类似于前面用于 names 数组的查询也是选择满足条件的数字(这里是数字小于1 000):var queryResults from n in numbers where n 1000 select n这次不需要 orderby 子句但处理时间略长(对于这个查询处理时间的变化不太明显但下一个示例会改变选择条件处理时间的变化就比较明显了)。用 foreach 语句输出查询的结果与前面的示例相同:Console.WriteLine(Numbers less than 1000:);
foreach (var item in queryResults) {Console.WriteLine(item);
}同样将结果输出到控制台上并读取一个字符以暂停输出Console.Write(Program finished, press Enter/Return to continue:);
Console.ReadLine();使用 LINQ可以很容易地修改查询条件以便演示数据集的不同特性。但是根据查询返回的结果数每次都输出所有的结果是没有意义的。 微信公众号 DotNet讲堂