什么是LINQ?
LINQ全称Language Integrated Query,中文翻译"语言集成查询".
在.NET框架中,大致使用三大组件实现这个封装,分别 LINQ to Objects,LINQ to ADO.NET,LINQ to XML.
LINQ在实际编程中大致是下面这种方式:
//建立一个内存数组
string[] arr={"张三","李四","王武","赵柳"};
//检索名字长度为2的名字
var value=from name in arr where name.Length=2 select name;
foreach(var item in value)
{
Console.WriteLine(item);
}
为什么要用LINQ?
LINQ的好处:
  不容易写错,防SQL注入,提升性能,编译检查,统一的数据处理方式,不需要掌握多种数据源操作方式.

初识LINQ to Objects
  LINQ to Objects 可以对IEnumerable或泛型IEnumerable<T>借口的集合,数组对象进行查询.
在没有LINQ之前一般使用foreach循环查询,而LIQN提供了一个全新的方式.就如上面那种方式.
初识LINQ to ADO.NET
  用LIQN技术查询关系型数据库,需要使用LINQ to ADO.NET ,它还细分为LINQ to SQL, LINQ to DataSet以及在VS2008之后开发的LINQ to Entities:

>LINQ to SQL 通过使用开发者建立的一个映射 SQL server 中的数据表.,被称作实体类的类型,来完成对数据库的查询,修改,删除等操作.
>LINQ to DataSet用来查询DataSet数据集或从数据库断开连接的数据.
>LINQ to Entities的用途跟LINQ to SQL类似,但比LINQ to SQL功能更加复杂和强大,例如,在一个实体类中映射多个数据表格和他们之间的关系,用LINQ查询Mcirosoft SQL Server系列产品以外的关系的数据库等.

初识LIVQ to XML
  XML应用已经非常普遍,常见的Intetnet网页文件,聚合RSS文件,程序的配置文件,WedSeriver以及最新格式的Microsoft Office Word文件等都是基于XMLDE.
使用LIVQ to XML可以访问和修改内存中的文档对象模型(DOM),相比DOM,LINQ to XML 是一种更加轻量级的模型,创建,修改和查询更加方便.使用LINQ表达式查询XML代码简洁,功能强大,类似与SQL的查询语法,学习起来也比较轻松.

Linq介绍的更多相关文章

  1. linq介绍及工作中应用两例——左联与内联,linq循环方法

    目录 1 linq介绍 1.1 linq产生背景 1.2 linq使用范围 1.3 linq核心程序集 1.4 linq架构图 1.5 linq使用形式对比 1.5.1 linq To Objects ...

  2. [C# 基础知识系列]专题十六:Linq介绍

    转自http://www.cnblogs.com/zhili/archive/2012/12/24/Linq.html 本专题概要: Linq是什么 使用Linq的好处在哪里 Linq的实际操作例子— ...

  3. LINQ之路 1: LINQ介绍

    LINQ是.NET Framework 3.5的新特性,其全称是 Language Integrated Query,即语言集成查询,是指将查询功能和语言结合起来.从而为我们提供一种统一的方式,让我们 ...

  4. EntityFramework数据持久化 Linq介绍

    一.LINQ概述与查询语法 二.LINQ方法语法基础(重点) 三.LINQ聚合操作与元素操作(重点) 四.数据类型转换(重点) 一.LINQ概述与查询语法 1.LINQ(Language Integr ...

  5. c# linq查询语句详细使用介绍

    本文介绍Linq的使用方法 linq介绍 LINQ只不过是实现IEnumerable和IQueryable接口的类的扩展方法的集合. LINQ可以查询IEnumerable集合或者IQueryable ...

  6. LinQ系列文章

    温故而知新,想着系统再学习一次LinQ知识点,发现园子里有个非常棒的系列文章,所以Mark下来,方便以后查阅! 系列博客导航: LINQ之路系列博客导航 LINQ之路 1:LINQ介绍 LINQ之路 ...

  7. LINQ之路 4:LINQ方法语法

    书写LINQ查询时又两种语法可供选择:方法语法(Fluent Syntax)和查询语法(Query Expression). LINQ方法语法是非常灵活和重要的,我们在这里将描述使用链接查询运算符的方 ...

  8. LINQ之路 3:C# 3.0的语言功能(下)

    在LINQ介绍一篇中,我们已经看到了隐式类型变量var,扩展方法(Extension method)和Lambda表达式的身影.没错,他们正是LINQ技术的基石,是他们让LINQ的实现成为可能,并且简 ...

  9. LINQ之路 2:C# 3.0的语言功能(上)

    在上一篇的LINQ介绍中,我们已经看到了隐式类型变量var,扩展方法(extension method)和lambda表达式的身影.没错,他们正是LINQ技术的基石,是他们让LINQ的实现成为可能,并 ...

随机推荐

  1. LNMP搭建(CentOS 6.3+Nginx 1.2.0+PHP 5.3.15(fpm)+ MySQL 5.5.35)

    Nginx (“engine x”) 是一个高性能的 HTTP 和反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器. Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 ...

  2. 在外国网站上看到一个用artoolKit做的demo,学习了用gcd创建单列

    外国网站:http://www.raywenderlich.com/42266/augmented-reality-ios-tutorial-location-based 看了下里面的demo,源代码 ...

  3. Search for a Range ——LeetCode

    Given a sorted array of integers, find the starting and ending position of a given target value. You ...

  4. Java 类加载机制详解

    一.类加载器 类加载器(ClassLoader),顾名思义,即加载类的东西.在我们使用一个类之前,JVM需要先将该类的字节码文件(.class文件)从磁盘.网络或其他来源加载到内存中,并对字节码进行解 ...

  5. 356. Line Reflection

    首先找到X方向的中点,如果中点是一个点,那么分别从这个点开始往左右找就行:如果是一个区间,比如1 2之间,那么首先总点数得是偶数,然后以1和2往左右两边找就行.. 找的时候,有3种情况: 同时没找到, ...

  6. oracle 零散知识汇集

    1. Select '登陆' + 2 From dual会报错: ora- 01722 无效数字,原理是oracle把'登陆'当成数字来和2进行加法运算. Select '登陆'|| 2 From d ...

  7. Lucene的中文分词器IKAnalyzer

    分词器对英文的支持是非常好的. 一般分词经过的流程: 1)切分关键词 2)去除停用词 3)把英文单词转为小写 但是老外写的分词器对中文分词一般都是单字分词,分词的效果不好. 国人林良益写的IK Ana ...

  8. Json序列化、反序列化互换

    // 序列化 using (MemoryStream stream = new MemoryStream()) { serializer.WriteObject(stream, hdm); jsonT ...

  9. 多线程下的NSOperation和NSOperationQueue的使用

    多线程下的NSOperation和NSOperationQueue的使用 NSOperation和NSOperationQueue的介绍: NSOperation是Cocoa中的一个抽象类,用来封装单 ...

  10. C++ XML 解释库

    rapidxml  http://rapidxml.sourceforge.net/index.htm