ADO.NET 3.0

2006-05-12 by 开心就好

微软推出了下一代数据访问技术的前景,这个技术将随着代号为Orcas的下一个.NET框架版本一起推出。主要技术是ADO.NET Entity Framework,由实体数据模型(Entity Data Model/EDM)以及一套设计时和运行时的服务组成,允许开发人员使用与业务应用相关的抽象来描述和操作数据,从而与底层的具体数据存储隔离。

这个实体的数据模型通过设计时的映射连接到具体的数据存储,然后开发人员可以通过一个Mapping Provider在这个实体的数据模型的层次做操作,而由Mapping Provider与具体的数据存储打交道,做需要的映射/转换等等。具体来说,开发人员通过eSQL(Entity SQL,基于SQL的扩展)来对实体的数据模型(EDM)做查询。

在这个上面,ADO.NET Entity Framework包括了一个对象服务,可以从EDM schema生成相应的.NET类,这些类是partial类,开发人员可以在另外的文件里添加跟业务有关的逻辑。这个 Entity Framework负责跟踪其中对象的状态变化,包括实体集合的成员变动,在SaveChanges时生成具体的SQL等。

最后,ADO.NET Entity Framework利用了LINQ技术,使开发人员不需要跟包含在字符串里的SQL语句打交道,而是直接与Entity Framework生成的实体类和集合打交道。

这个技术也包括了对普通以及强类DataSet做LINQ操作的支持。

说白了,ADO.NET Entity Framework就是微软自己的基于LINQ的O/R M框架。。。翘首以待,希望不久就能玩到这框架!

具体的细节参考

Microsoft Data blog
http://blogs.msdn.com/data/archive/2006/05/10/594771.aspx

Next-Generation Data Access: Making the Conceptual Level Real
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnadonet/html/nexgenda.asp

ADO.NET Tech Preview: Overview
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnadonet/html/adonetv3.asp

Channel9上有个ADO.NET产品组讨论ADO.NET 3.0的采访录像
http://channel9.msdn.com/Showpost.aspx?postid=191667

还有一个相关的screencast[来源:ADO.NET mapping screencast],用具体的编码演示ADO.NET 3.0的映射概念,以及怎么映射复杂类,继承等

http://datajunkies.net/screencasts/mapping1/mapping1.html


Comments