LINQ ADO.NET浅析
创始人
2024-06-06 22:41:09
0

本文向大家介绍LINQ ADO.NET,可能好多人还不了解LINQ ADO.NET,没有关系,看完本文你肯定有不少收获,希望本文能教会你更多东西。

为什么需要LINQ ADO.NET?

面向对象的编程语言已经成为企业应用开发的重要工具,LINQ ADO.NET对关系数据提供了一种方便的接口,但还不是一种面向对象的方法。例如,下面的伪代码:

  1. User u = new User(); //代表user表的一个User类  
  2. u.LoginName = "net_lover" //设置一个LoginName标识  
  3. u.Load(); .//加载用户信息  
  4. u.Title = "【CSDN】"; //将Title修改为【CSDN】  
  5. u.Update(); //将修改的数据更新到数据库。 

这段伪代码说明了管理数据的一种面向对象的方法,对开发人员来说,看不到查询或SQL语句。你只需关心的只是做什么,而无需关心怎么做。这种将面向对象和关系数据结合在一起的方法叫做对象关系映射(ORM)模型,这样的方法简化了枯燥的数据操作,简洁明了。

关于ORM,在Java世界里有很多框架,但在.NET Framework里还比较少,NHibernate就是Microsoft .NET平台下ORM的实现,它的目的是将开发人员从大量的关系数据持久化相关的编程中解放出来。目前,NHibernate的稳定版本是 NHibernate 1.2.1,于2007年11月份发布,加入了Hibernate 3中的更多功能,并且支持 .NET 2.0,存储过程,泛型和可为空类型。NHibernate 2.0目前正在开发中。毕竟NHibernate属于开源的代码,不是微软自己的东西,而且它处理的数据源也有限。VS 2005中NHibernate的插件下载地址:http://sourceforge.net/projects/nhibernateaddin。

尽管微软在Dynamics 3.0应用服务器中嵌入了ORM功能,并且在LINQ ADO.NET 3.0中将广泛支持此功能,但是还仍然没有将这种编程模型提供给.NET开发人员。LINQ ADO.NET中数据的操作采用的是Command或者 DataAdapter对象来操作关系数据库,但需要自己写的代码很多,并且需要自己写SQL语句。

.NET也提供了处理XML和非关系数据源,但是我们必须了解其他的方法来查询信息,比如XPath或者XQuery。
现在,可以编程管理的数据可能来自不同的数据域,如数组、对象关系图、XML文档、数据库、文本文件、注册表、电子邮件消息、简单对象访问协议(SOAP)信息内容、Microsoft Office Excel文件等等很多。每种数据域都有自己特定的访问模型,例如,当查询数据库时,通常使用SQL,当遍历XML数据时,使用Document Object Model(DOM)或者XPath、XQuery,当遇到数组是采用遍历的方法,对于对象关系图,则需要自己创建算法,对于Excel文件,电子邮件消息或者Microsoft Windows注册表,要访问他们,则需要使用特定的应用程序编程接口(API)。到最后,访问不同的数据源就要使用不同的编程模型。

将多种数据访问技术统一到一个全面的模型也曾出现过,例如:开放数据库互联(ODBC)提供者允许开发人员以一种类似SQL的语言通过关系模型访问数据。在某些时候,数据以层次或者图形模型来表示更加符合数据的本质含义。另外,如果数据模型没有与编程语言结合在一起,就可能需要编程人员自己管理不同的类型体系。所有这些差别在数据和代码之间产生一种“阻抗失谐”。LINQ就是解决这些问题的技术,它提供统一的访问和管理数据的方法,并且不是采取“一刀切” 的模型来实现。LINQ在这些数据模型之间均衡操作直接的共同特性,而不是在他们之间将不同的结构变成统一。

【编辑推荐】

  1. LINQ查询操作剖析
  2. LINQ生成字符串概述
  3. LINQ查询语法简单描述
  4. LINQ解决方案简单概述
  5. LINQ查询结果分析

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...
《非诚勿扰》红人闫凤娇被曝厕所... 【51CTO.com 综合消息360安全专家提醒说,“闫凤娇”、“非诚勿扰”已经被黑客盯上成为了“木...
2012年第四季度互联网状况报... [[71653]]  北京时间4月25日消息,据国外媒体报道,全球知名的云平台公司Akamai Te...