All articles| All Pictures| All Softwares| All Video| Go home page| Write articles| Upload pictures

Reading number is top 10 articles
如何利用SQL查询返回庞大的整数序列表_[SQL Server教程]
PHP技巧-巧用jquery达到无刷新删除效果_[PHP教程]
ASP.NET底层架构探索之HttpHandlers_.net资料_编程技术
浅谈PHP开发团队的管理之道_php资料_编程技术
Visual C++向对话框类中添加工具栏
C#中HelpProvider组件应用实例
ASP.NET,生成,RSS,Feed_.net资料_编程技术
在Visual,C#程序中使用系统热键_.net资料_编程技术
PHP程序和ASP程序转换要注意的问题_php资料_编程技术
实例:ASP.NET遍历配置文件的连接字符串_.net资料_编程技术
Reading number is top 10 pictures
NeedWallpaper13
Ashlynn Brooke show proud chest measurement1
The Soviet union swimsuit exposure in the 70 year2
恶搞漫画2
Born After 90 Beijing sports university campus flower photos1
Summer is most suitable for young people to travel in China8
避免防盗门的猫眼变成钥匙眼
So beauty, will let you spray blood4
接财神,大吉大利,财源滚滚来
29 the belle stars after bath figure5
Download software ranking
Tram sex maniac 2 (H) rar bag2
linux安装大全
仙剑奇侠传98硬盘WINXP版
Unix video tutorial13
Unix video tutorial2
C#COM编程指南
少妇苏霞全本
Desire a peach blossom
matrix2
I for your crazy
归海一刀 published in(发表于) 2014/1/30 1:03:10 Edit(编辑)
LINQ体验(4)——LINQ简介和LINQ,to,SQL语句之Where_[Asp.Net教程]

LINQ体验(4)——LINQ简介和LINQ,to,SQL语句之Where_[Asp.Net教程]

LINQ体验(4)——LINQ简介和LINQ to SQL语句之Where_[Asp.Net教程]

查询表达式(LINQ)简介


在上两篇我介绍了C#3.0新语特性和改进,这些新特性在我们编写程序时为我们提供了非常大的帮助。从这篇开始,我们开始一起来探讨LINQ。


LINQ是Language Integrated Query的简称,它是集成在.NET编程语言中的一种特性。已成为编程语言的一个组成部分,在编写程序时可以得到很好的编译时语法检查,丰富的元数据,智能感知、静态类型等强类型语言的好处。并且它同时还使得查询可以方便地对内存中的信息进行查询而不仅仅只是外部数据源。


LINQ定义了一组标准查询操作符用于在所有基于.NET平台的编程语言中更加直接地声明跨越、过滤和投射操作的统一方式,标准查询操作符允许查询作用于所有基于IEnumerable接口的源,并且它还允许适合于目标域或技术的第三方特定域操作符来扩大标准查询操作符集,更重要的是,第三方操作符可以用它们自己的提供附加服务的实现来自由地替换标准查询操作符,根据LINQ模式的习俗,这些查询喜欢采用与标准查询操作符相同的语言集成和工具支持。


我们来总体看看LINQ架构

LINQ架构

在.NET3.5下,微软为我们提供了一些命名空间

LINQ命名空间

LINQ包括五个部分:LINQ to Objects、LINQ to DataSets、LINQ to SQL、LINQ to Entities、LINQ to XML。


LINQ to SQL全称基于关系数据的.NET语言集成查询,用于以对象形式管理关系数据,并提供了丰富的查询功能。其建立于公共语言类型系统中的基于SQL的模式定义的集成之上,当保持关系型模型表达能力和对底层存储的直接查询评测的性能时,这个集成在关系型数据之上提供强类型。


LINQ to XML在System.Xml.LINQ命名空间下实现对XML的操作。采用高效、易用、内存中的XML工具在宿主编程语言中提供XPath/XQuery功能等。


说了这么多,我们还是用一个简单的实例说明一下LINQ带来的体验。


第一步:建立dbml(Database Mark Language。数据库描述语言,是一种xml格式的文档,用来描述数据库)文件,以Northwind数据库为例,上述Customers类被映射成一个表,对应数据库中的 Customers表

第一步:建立dbml文件

第二步:创建一个ASP.NET页面,在页面上加入一个GridView控件

第二步:在页面上拖一个GridView控件用于显示

第三步:编写代码进行数据绑定

第三步:编写后台绑定代码

第四步:运行显示结果。

第四步:显示

好了,就说这么多吧,大家应该对LINQ有了总体的了解。最后我对LINQ还有一点疑惑,在此提出,请熟悉的朋友来探讨:



  1. LINQ是在ADO.NET之上的,那么在将来它会代替ADO.NET吗?
  2. 在大型项目中使用LINQ,它的效率如何呢?

接下来,我们开始从LINQ语句入手,来全面了解一下LINQ,就从最简单的Where说起吧,这个在编写程序中也最为常用。


Where操作


适用场景:实现过滤,查询等功能。


说明:与SQL命令中的Where作用相似,都是起到范围限定也就是过滤作用的,而判断条件就是它后面所接的子句。


Where操作包括3种形式,分别为简单形式、关系条件形式、First()形式。下面分别用实例举例下:


1.简单形式:

var q =
from c in db.Customers
where c.City == "London"
select c;
var q =
from e in db.Employees
where e.HireDate >= new DateTime(1994, 1, 1)
select e;

2.关系条件形式:

var q =
from p in db.Products
where p.UnitsInStock <= p.ReorderLevel && !p.Discontinued
select p;
var q =
from p in db.Products
where p.UnitPrice > 10m || p.Discontinued
select p;
var q =
db.Products.Where(p=>p.UnitPrice > 10m).Where(p=>p.Discontinued);

3.First()形式:


返回集合中的一个元素,其实质就是在SQL语句中加TOP (1)

Shipper shipper = db.Shippers.First();
Customer cust = db.Customers.First(c => c.CustomerID == "BONAP");
Order ord = db.Orders.First(o => o.Freight > 10.00M);






添加到del.icio.us 添加到新浪ViVi 添加到百度搜藏 添加到POCO网摘 添加到天天网摘365Key 添加到和讯网摘 添加到天极网摘 添加到黑米书签 添加到QQ书签 添加到雅虎收藏 添加到奇客发现 diigo it 添加到饭否 添加到飞豆订阅 添加到抓虾收藏 添加到鲜果订阅 digg it 貼到funP 添加到有道阅读 Live Favorites 添加到Newsvine 打印本页 用Email发送本页 在Facebook上分享


Disclaimer Privacy Policy About us Site Map

If you have any requirements, please contact webmaster。(如果有什么要求,请联系站长)
Copyright ©2011-
uuhomepage.com, Inc. All rights reserved.