LINQ查询操作全面分析

学习LINQ查询时,经常会遇到LINQ查询操作问题,这里将介绍LINQ查询操作问题的解决方法。

创新互联建站是一家集网站建设,广昌企业网站建设,广昌品牌网站建设,网站定制,广昌网站建设报价,网络营销,网络优化,广昌网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。

语言集成查询 (LINQ) 是 Visual Studio 2008 和 .NET Framework 3.5 版中一项突破性的创新,它在对象领域和数据领域之间架起了一座桥梁。

传统上,针对数据的查询都是以简单的字符串表示,而没有编译时类型检查或 IntelliSense 支持。此外,您还必须针对以下各种数据源学习不同的查询语言:SQL 数据库、XML 文档、各种 Web 服务等。LINQ 使查询成为 C# 和 Visual Basic 中的一等语言构造。您可以使用语言关键字和熟悉的运算符针对强类型化对象集合编写查询。用 C# 语言编写的、不完整的 LINQ 查询,该查询针对 SQL Server 数据库,并具有完全类型检查和 IntelliSense 支持。

LINQ查询操作由以下三个操作组成:

1、获取数据源:支持泛型 IEnumerable(Of (T)) 接口的所有对象都可以作为LINQ的数据源,包括Array、List等。

2、创建查询:指定要从数据源中检索的哪些信息,还可以指定在返回这些信息之前如何对其进行排序、分组或结构化。创建(定义)的查询通常存储在变量中,并不会在定义时马上执行而是在以后执行。所以记住:查询变量本身不会执行任何操作,也不会返回任何数据,它只是存储查询定义。

3、执行查询:执行查询有两种情况,1是延迟执行;2是立即执行。

3.1、延迟执行:查询定义并保存在查询定义变量后,不马上执行,而是在后续需要时才执行。这通常需要使用 For Each 循环(它返回值序列)或应用标准查询运算符。对于值序列,可使用 For Each 循环中的迭代变量(在上一个示例中为 number)访问所检索的数据。

3.2、立即执行:在立即执行过程中,查询在定义时执行。当应用需要访问查询结果的各个元素的方法时,就会触发执行。通常使用能够返回单个值的标准查询运算符之一来强制立即执行。Count、Max、Average 和 First 就属于标准查询运算符。只要应用了这些标准查询运算符以便计算并返回单一实例结果,这些运算符就会立即执行查询。例如:

 
 
 
  1. Dim numbers中的偶数个数 = (From num In numbers _
  2. Where num Mod 2 = 0 _
  3. Select num).Count()

还可通过对查询(立即执行)或查询变量(延迟执行)调用 ToList 或 ToArray 方法来强制执行查询,如下面的代码所示:

 
 
 
  1. Dim evensList = (From num In numbers _
  2. Where num Mod 2 = 0 _
  3. Select num).ToList()

以上介绍LINQ查询操作

当前标题:LINQ查询操作全面分析
网站路径:http://www.stwzsj.com/qtweb/news15/10415.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联