ADO .NET与ADO有很大的不同。它是一个全新的访问编程模型。当你开始使用ADO.NET时,你会发现你所掌握的任何关于ADO的技能在搭建有效的程序以及解决难题方面对你都会有很大帮助,能够帮你在解决问题上朝更灵活更稳妥的方向发展。
ADO.NET同时支持使用ODBC和OLE-DB与数据源进行通信,但它也提供了使用数据库特定的数据提供程序。这些数据提供程序提供更好的性能,因为它们可以利用针对特定数据源进行的优化。通过使用定制代码而不是通用的ODBC或OLE-DB代码,也可以避免一些系统开销。最初发布的ADO.NET含有一个SQL提供程序和一个OLE-DB提供程序,后来又引入了ODBC和Oracle的提供程序。自此以后,许多供应商也都为自己的数据库编写了提供程序。
数据访问技术具有悠久的历史,即便对于ADO.NET而言,也仍然有成长的空间。向ADO.NET 2.0的过渡不算很剧烈的转变。在极大程度上,Microsoft及其使用ADO.NET的开发人员喜欢其工作方式。在Framework 2.0中,基本的设计是相同的,但加入了几项新特性使得普通的任务变得更加容易,这一点对于向下兼容来说是非常好的。ADO.NET 2.0应该100%地向下兼容编写的所有ADO.NET 1.0的代码。
对2.0版本的产品而言,首要的设计目标基本上都是改进性能。无论怎么说,ADO.NET 1.0性能都不算差,但是有些领域还是可以改进的,包括XML串行化以及连接入池,这些都被重写以提供更好的性能。
LINQ
LINQ,全名叫 Language INtegrated Query,它在代号为“Orcas”的Visual Studio 2008中发布。待查询数据的形式可以是 XML(LINQ 到 XML)、数据库(启用 LINQ 的 ADO.NET,其中包括 LINQ 到 SQL、LINQ 到 Dataset 和 LINQ 到 Entities)和对象 (LINQ 到 Objects) 等。
LINQ正如它的名字“集成查询语言”的含义一样,它提供给程序员一个统一的编程界面。程序员不需要关心他将要操作的将是关系数据库还是XML,甚至是远程的对象,它都采用同样的查询方式。就如同通过T-SQL操纵数据库一样,不管是Oracle,SyBase还是SQL Server,他们的Select语法都是一样的。
有了LINQ,程序员便可以不再沉泥于不同的数据访问技术的学习。不管编程语言如何发展,还是数据库技术的发展,都不再需要程序员进行学习,数据存储的效率由数据库厂商进行优化,灵活的数据操作方法由数据访问中间件厂商提供,程序员只需要编写业务逻辑。
总结
数据访问技术越来越向通用化发展,有一种“万源归宗”的感觉。有了数据访问层的支持,让程序员的工作效率大大提高,数据中间件在信息管理系统提供了数据层的支持。而LINQ将数据访问的通用性发挥到了极致。
文章来源于领测软件测试网 https://www.ltesting.net/