LINQ查询操作剖析

来源:岁月联盟 编辑:zhu 时间:2009-09-14

LINQ有很多值得学习的地方,这里我们主要介绍LINQ查询操作,包括介绍LINQ查询操作都由三个不同的操作组成等方面。

LINQ,语言级集成查询(Language INtegrated Query)

经过了最近20年,面向对象编程技术( object-oriented (OO) programming technologies )在工业领域的应用已经进入了一个稳定的发展阶段。程序员现在都已经认同像类(classes)、对象(objects)、方法(methods)这样的语言特性。考察现在和下一代的技术,一个新的编程技术的重大挑战开始呈现出来,即面向对象技术诞生以来并没有解决降低访问和整合信息数据( accessing and integrating information )的复杂度的问题。其中两个最主要访问的数据源与数据库( database )和 XML 相关。

LINQ 提供了一条更常规的途径即给 .Net Framework 添加一些可以应用于所有信息源( all sources of information )的具有多种用途( general-purpose )的语法查询特性( query facilities ),这是比向开发语言和运行时( runtime )添加一些关系数据( relational )特性或者类似 XML 特性( XML-specific )更好的方式。这些语法特性就叫做 .NET Language Integrated Query (LINQ) 。

LINQ查询操作都由以下三个不同的操作组成:
1.获取数据源。
2.创建查询。
3.执行查询。

  1. // The Three Parts of a LINQ Query:  
  2. // 1. Data source.  
  3. int[] numbers = new int[7] { 0, 1, 2, 3, 4, 5, 6 };  
  4.  
  5. // 2. Query creation.  
  6. // numQuery is an IEnumerable<int> 
  7. var numQuery =  
  8. from num in numbers  
  9. where (num % 2) == 0  
  10. select num;  
  11.  
  12. // 3. Query execution.  
  13. foreach (int num in numQuery)  
  14. {  
  15. Console.Write("{0,1} ", num);