首页 / 教程列表 / LINQ教程 / LINQ入门简介

LINQ入门简介

1283 更新于: 2021-11-01 读完约需 3 分钟

.NET中,LINQ数据的基本单位是序列元素。序列是任何实现了IEnumerable<T>或者IQueryable<T>泛型接口的对象,元素是序列中的每一项。

在下面的示例代码中,names是一个序列,Tom、Dick和Harry是元素:

string[] names = { "Tom", "Dick", "Harry" };

像这样在程序中使用变量定义并存储数据的序列称为局部序列,因为它表示内存中对象的局部集合。

LINQ查询为实现了IEnumerableIQueryable接口的类使用扩展方法。位于System.Linq命名空间的EnumerableQueryable是两个静态类,它们包含了用于编写LINQ查询的扩展方法。

Enumerable

.NET内置的实现了IEnumerable接口的类有:

下表列出了Enumerable静态类所有内置的LINQ静态扩展方法:

Queryable

Queryable类包含实现了IQueryable<T>接口的类的扩展方法。IQueryable<T>接口用于提供针对已知数据类型的特定数据源的查询功能。例如,Entity Framework 的API实现了IQueryable<T>接口来支持底层数据库(如MS SQL Server)的LINQ查询。

此外,还有一些可以访问第三方数据的API。例如,LINQ to Amazon提供了在亚马逊网络服务中使用LINQ搜索书籍和其他物品的能力。这可以通过为Amazon实现IQueryable接口来实现。

下图是Queryable静态类中实现了IQueryable或者IEnumerable的静态扩展方法:

LINQ查询的语法

在.NET应用程序中,提供了两种基本方法来编写基于IEnumerable数据集合或基于IQueryable数据源的LINQ查询,分别为:

  • 查询语法或查询表达式语法
  • 方法语法或方法扩展语法

接下来将分别介绍查询语法和方法语法的具体使用方法。

版权声明:本作品系原创,版权归码友网所有,如未经许可,禁止任何形式转载,违者必究。

本文永久链接码友网 » LINQ教程 » LINQ入门简介 分享:

发表评论

登录用户才能发表评论, 请 登 录 或者 注册