提到LINQ首先我们要了解什么是委托:委托是一种引用方法的类型。一旦为委托分配了方法,委托将与该方法具有完全相同的行为。也就是说当你委托给一个人办一件事的时候,他就拥有这个能力去实现这件事,同样委托也是,简单的原理:就是把一个方法作为一个参数给另一个方法。

其次就是我们要了解什么是Lambda表达式,简单的讲一下Lambda的历史自从C#3.0开始,可以使用一种更为方便的语法把功能实现代码赋予委托:Lambda表达式:( 参数列表 )=> { 实现代码 }表达式 => (也可以读作 goes to)左列需要的参数,Lambda运算符的右边定义了赋予Lambda的实现代码

最后就是我们的LINQ提供了一个常规的途径,即给.Net Framework添加一些可以应用于所有信息源(all sources of information)的具有多种用途的语法查询特性,这是比向开发语言和运行时添加一些关系数据特性或者类似 XML特性更好的方式。这些语法特性就叫做Language Integrated Query (LINQ)或称之为语言集成查询。

Linq的语法:数据源是一个普通的字符串数组,LINQ查询的主要功能是从字符串数组中查询出,以“基础”结尾的字符串。从代码可以看出,整个操作分为3步:新建数据源、创建LINQ查询和执行查询。在创建查询时,可以看到一些与SQL查询语言类似的关键字,如from、select、where等。

“LINQ tO Objects”是指直接对任意集合使用LINQ查询。与传统的foreach循环相比,LINQ具有三大优势。

(1)更简洁,更易读,特别是在筛选条件比较复杂时。
(2)使用最少的代码编写强大的筛选、排序和分组的功能。
(3)无须修改或只需修改少量代码即可将其移植到其他类型的数据源。

“LINQ to Objects”是指直接对任意集合使用LINQ查询。与传统的foreach循环相比,LINQ具有三大优势:更简洁,更易读,特别是在筛选条件比较复杂时;使用最少的代码编写强大的筛选、排序和分组的功能;无需修改或只需修改少量代码即可将其移植到其他类型的数据源。所有的LINQ查询操作都由三个不同的操作组成:获取数据源;创建查询;执行查询,以上就是简单的叙述。

最新文章

  1. 【VB6】vbRichClient5.cWebServer实现一个简单web服务器
  2. SPOJ GSS5 Can you answer these queries V
  3. C#设计模式(16)——迭代器模式(Iterator Pattern)
  4. yii遍历行下的每列数据(小1月考)
  5. bind 方法实现
  6. java普通servlet三层开发模式图
  7. 过河-状压DP
  8. css3圆角边框,边框阴影
  9. Android 5.0 新特性
  10. python运维开发之路第一天
  11. MFC、C++ 、Windows编程高手
  12. hdu5171(矩阵快速幂)
  13. git三个区域详解
  14. 任务调度之持久化(基于Quartz.net)
  15. Range Modular Queries
  16. Python 斐波那契数列练习
  17. linux --> vimrc的配置
  18. Android PowerManager电源管理(Android N )
  19. Python全栈之路----常用模块----sys模块
  20. Python开发技巧

热门文章

  1. 开源方案搭建可离线的精美矢量切片地图服务-2.PostGIS+GeoServer矢量切片
  2. jackson json转对象 json转集合 对大小写支持
  3. Airtest 快速上手教程
  4. 生产环境一键创建kafka集群
  5. ArrayList 和 LinkedList 源码分析
  6. 设计模式之外观模式——Java语言描述
  7. SQL Server统计信息偏差影响表联结方式案例浅析
  8. 在Docker中体验数据库之Microsoft SQL Server
  9. Windows Server 2016-Netdom Join加域并指定OU (一)
  10. Windows To Go入坑记录