linq介绍

本文介绍了语言集成查询(LINQ)的概念,它是C#中的一种技术,将查询功能直接集成到语言中,提供对对象、数据库和XML的一致查询体验。LINQ简化了查询表达式,使用更简洁的语法,支持延迟执行,确保在需要时才处理数据。此外,还讨论了序列的重要性、延迟执行的原理以及常见的标准查询操作符,如Where、OrderBy和Join。
摘要由CSDN通过智能技术生成

什么是linq

语言集成查询 (LINQ) 是一组基于将查询功能直接集成到 C# 语言中的技术的名称。传统上,对数据的查询表示为简单的字符串,在编译时没有类型检查或 IntelliSense 支持。此外,您必须为每种类型的数据源学习不同的查询语言:SQL 数据库、XML 文档、各种 Web 服务等等。使用 LINQ,查询是一流的语言结构,就像类、方法、事件一样。您可以使用语言关键字和熟悉的运算符针对强类型的对象集合编写查询。LINQ 系列技术为对象 (LINQ to Objects)、关系数据库 (LINQ to SQL) 和 XML (LINQ to XML) 提供一致的查询体验。

之前我们查询集合中的数据一般会使用for或foreach语句来进行查询,Linq 使用查询表达式来进行查询,Linq 表达式比之前用for或forach的方式更加简洁,比较容易添加筛选条件。

将下列int集合整体每个元素扩大10倍

            var num = new List<int>() { 1,2,3,4,5};
            IEnumerable<int> query = num.Select(n => n * 10);
            foreach (int n in query)
                Console.WriteLine(n);

从上面的例子可以看出,linq集合在查询是简单了很多,并且很容易添加筛选条件。

linq原理

编译器是如何处理这些查询表达式的呢,为了理解好这个问题就要先解释一下linq的底层思想。

1.序列

序列是linq的基础。序列是通过过IEnumerable和IEnumerable<T>接口进行封装,如果某个类型实现了IEnume

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值