Linq介绍
什么是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介绍的更多相关文章
- 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 ...
- [C# 基础知识系列]专题十六:Linq介绍
转自http://www.cnblogs.com/zhili/archive/2012/12/24/Linq.html 本专题概要: Linq是什么 使用Linq的好处在哪里 Linq的实际操作例子— ...
- LINQ之路 1: LINQ介绍
LINQ是.NET Framework 3.5的新特性,其全称是 Language Integrated Query,即语言集成查询,是指将查询功能和语言结合起来.从而为我们提供一种统一的方式,让我们 ...
- EntityFramework数据持久化 Linq介绍
一.LINQ概述与查询语法 二.LINQ方法语法基础(重点) 三.LINQ聚合操作与元素操作(重点) 四.数据类型转换(重点) 一.LINQ概述与查询语法 1.LINQ(Language Integr ...
- c# linq查询语句详细使用介绍
本文介绍Linq的使用方法 linq介绍 LINQ只不过是实现IEnumerable和IQueryable接口的类的扩展方法的集合. LINQ可以查询IEnumerable集合或者IQueryable ...
- LinQ系列文章
温故而知新,想着系统再学习一次LinQ知识点,发现园子里有个非常棒的系列文章,所以Mark下来,方便以后查阅! 系列博客导航: LINQ之路系列博客导航 LINQ之路 1:LINQ介绍 LINQ之路 ...
- LINQ之路 4:LINQ方法语法
书写LINQ查询时又两种语法可供选择:方法语法(Fluent Syntax)和查询语法(Query Expression). LINQ方法语法是非常灵活和重要的,我们在这里将描述使用链接查询运算符的方 ...
- LINQ之路 3:C# 3.0的语言功能(下)
在LINQ介绍一篇中,我们已经看到了隐式类型变量var,扩展方法(Extension method)和Lambda表达式的身影.没错,他们正是LINQ技术的基石,是他们让LINQ的实现成为可能,并且简 ...
- LINQ之路 2:C# 3.0的语言功能(上)
在上一篇的LINQ介绍中,我们已经看到了隐式类型变量var,扩展方法(extension method)和lambda表达式的身影.没错,他们正是LINQ技术的基石,是他们让LINQ的实现成为可能,并 ...
随机推荐
- hdu-1890-Robotic Sort splay区间翻转
题意: 依次找第i大的数下标pos[i],然后将区间[i,pos[i]]翻转 分析: splay树区间翻转 // File Name: ACM/HDU/1890.cpp // Author: Zlbi ...
- 使用DateAdd方法向指定日期添加一段时间间隔,使用TimeSpan对象获取时间间隔
一:使用DateAdd方法向指定日期添加一段时间间隔,截图 二:代码 using System; using System.Collections.Generic; using System.Comp ...
- KMP算法,Boyer-Moore算法
http://www-igm.univ-mlv.fr/~lecroq/string/node19.html 首先看普通的串的模式匹配算法开始讲起,才能更深入的了解KMP算法及其优点. 1. 普通的串的 ...
- Java 自动装箱和拆箱
JDK1.5之后的功能 自动装箱:指的是开发人员可以把一个基本数据类型直接赋给对应的包装类 自动拆箱:指开发人员可以把一个包装类对象直接赋给对应的基本数据类型 public static void m ...
- JPA query 基本语法解释
详细语法官网去学习 -->> http://docs.spring.io/spring-data/jpa/docs/current/reference/html/#reference Qu ...
- __block的作用
__block 的标记告诉编译器,这个变量在 block 里面需要做特殊处理. 一般来说,在 block 中用的变量值是被复制过来的,所以对于变量本身的修改并不会影响这个变量的真实值.而当我们用 __ ...
- Demon_动画控制(实现前后左右移动,喊叫)
using UnityEngine; using System.Collections; public class PlayerAnimation : MonoBehaviour { float ve ...
- Lucene 4.x实践1
在Lucene 3.x时代,<Lucene In Action>是一本相当不错的参考书,书中详细介绍了Lucene各种高级使用技术,对于开发者来说非常实用.但是近期Lucene升级到了4. ...
- QueryPerformanceFrequency使用方法--Windows高精度定时计数
在多核心或多处理器的计算机上.特别是在支持CPU频率动态调整的计算机上,windows系统下的QueryPerformanceFrequency()获取HPET(假设存在)的频率,而QueryPerf ...
- Android Touch系统简介(二):实例详解onInterceptTouchEvent与onTouchEvent的调用过程
上一篇文章主要讲述了Android的TouchEvent的分发过程,其中有两个重要的函数:onInterceptTouchEvent和onTouchEvent,这两个函数可被重装以完成特定的逻辑.on ...