LinQ是什么?

37 篇文章 0 订阅

 LinQ是什么?

LINQ发音:Link)是语言级集成查询(Language INtegrated Query)
LINQ是一种用来进行数据访问的编程模型,使得.NET语言可以直接支持数据查询
LINQ的目标是降低访问数据的复杂度
LINQ可以用统一的方法访问不同类型的数据,可以将数据作为对象使用
能够更好地与编程模型集成
可以在Visual Studio中进行智能提示
动态编程
LINQ的历史:
从语言方面的进化
委托
匿名方法
Lambda表达式
Linq查询表达式
从时间方面的演进
2004
20059月,C#2.0PDC上发布
200511月,C#2.0预览版
20061月,VB8.0预览版
200711月,.net 3.5发布
 LINQ基础:
语言集成查询 (LINQ) 允许开发人员通过强类型化语法使用.NET Framework 3.5 代码编写类似 SQL 的查询。
LINQ 查询还具有一个标准查询操作符库来增强其功能。这些标准查询操作符对序列进行运算并可执行各种运算,如确定序列中是否存在某个值以及对序列运行合计函数(如求和)
LINQ包括:
LINQ to Objects  用于对象的查询
LINQ to XML  XML数据的查询
LINQ to ADO.NET  对数据库的查询
LINQ to DataSets  数据集
LINQ to Entities  ORM对象
LINQ to SQL  简易ORM框架
命名空间在System.Linq
实现 IEnumerable<T> IQueryable<T> 接口的对象都可使用LINQ操作
LINQ框架图:
LINQ基础语法:
 
From ?? In ** where … select  new {};
查询语法是以 from 关键字开头的,而不是以 select 关键字开头的?
为了IDE的智能感知(Intelisence这个功能,select 关键字放在后面
例:
var q =   
from c in db.Customers   
where c.City == "London"   
select c;
语法与数据库的 SQL 命令有些相似
select * from employee where empno =7376;
LINQ基础操作符:
 
聚合  
Aggregate  对序列执行一个自定义方法
Average  计算数值序列的平均值
Count  返回序列中的项目数(整数)
LongCount   返回序列中的项目数(长型)
Min  查找数字序列中的最小数
Max  查找数字序列中的最大数
Sum  汇总序列中的数字
元素  
DefaultIfEmpty   为空序列创建默认元素
ElementAt   返回序列中指定索引的元素
ElementAtOrDefault 返回序列中指定索引的元素,或如果索引超出范围则返回默认值
First  返回序列中的第一个元素
FirstOrDefault   返回序列中的第一个元素,或者如果未找到元素,则返回默认值
Last  返回序列中的最后一个元素
LastOrDefault   返回序列中的最后一个元素,或者如果未找到元素,则返回默认值
Single  返回序列中的单个元素
SingleOrDefault   返回序列中的单个元素,或者如果未找到元素,则返回默认值
排序
OrderBy   以升序按值排列序列
OrderByDescending   以降序按值排列序列
ThenBy   升序排列已排序的序列
ThenByDescending   降序排列已排序的序列
Reverse  颠倒序列中项目的顺序
LINQ的未来: 
一切皆可 LINQ, 一切皆有可能
程序语言向自然语言的进化
数据库存储在软件系统分层中更清晰
基于.net平台的软件体系更好应用ORM
影响编程习惯,及解决问题的思路
LINQ参见资料:
 
http://dev.yesky.com/topic/305/8142805.shtml
http://www.verycd.com/topics/2762344/
http://www.docin.com/p-49692160.html
http://cid-79cf5e75e6e5fd50.spaces.live.com/blog/cns!79CF5E75E6E5FD50!379.entry
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值