20070615 .net orm 框架
http://www.yippeesoft.com

一个.NET程序,对数据库有些操作,感觉SQL语句太多了,看看ORM的资料

有人统计的一些ORM框架
Object Relational Mapping has been a hot topic here on TSS as well as in the industry in general. There are a number of ORM tools on the market, each promising this feature or that. Some are open source projects while others are large scale commercial products. So which tool is best and why?
Here\’s a list of .NET based ORMs taken from Yves Reynhout\’s blog.
.NET Persistence
BBADataObjects
DataObjects.NET
Data Tier Modeler for .NET
DotNorm
Eldorado.NET
Enterprise Core Objects (ECO?)
Entity Broker
eXpress Persistent Objects for .NET
FastObjects.NET
JC Persistent Framework
LLBLGen Pro
ModelWorks
Nhibernate
Nolics.NET
Norm
Norpheme
ObjectBroker
ObjectSpaces
ObjectSpark
Objectz.NET
OJB.NET
OPF.Net (Object Persistent Framework)
ORM.NET
Pragmatier Data Tier Builder
RapTier
Sisyphus Persistence Framework
TierDeveloper
Bob.NET
ObjectPersistor.NET
Genome

选个.NET ORM 作者 geekone 日期 2006-9-16 16:07:00
JAVA 的ORM里面,好象hibernate和TopLink是主流.

昨天拿了一套VS2005企业版,想在.NET里面用ORM?

看了一篇例举.NET里面的ORM项目,有二三十个

http://www.theserverside.net/news/thread.tss?thread_id=29914

然后又翻了不少比较文章.最后给自己选了三个需要关注的

NHibernate  (开源,和Hibernate同出一门,从JAVA过度到.NET不吃力,而且现在将得到Spring.Net的集成,自己首选的ORM)

Grove    (免费.对VS2003,VS2005都有Toolkit支持,保持着更新进度,适当关注)

ObjectSpaces (微软官方自己的ORM,本来在说要在包括.NET 2.0里,在测试版本中曾经出现过.现在取消了.MS说会放在WinFx里.看来要在Longhorn推出才能正式看到)

http://www.microsoft.com/china/MSDN/library/netFramework/netframework/Grove.mspx?mfr=true
Grove——.NET中的ORM实现
发布日期: 6/30/2005 &line; 更新日期: 6/30/2005
作者:林学鹏

ORM的全称是Object Relational Mapping,即对象关系映射。它的实质就是将关系数据(库)中的业务数据用对象的形式表示出来,并通过面向对象(Object-Oriented)的方式将这些对象组织起来,实现系统业务逻辑的过程。在ORM过程中最重要的概念是映射(Mapping),通过这种映射可以使业务对象与数据库分离。从面向对象来说,数据库不应该和业务逻辑绑定到一起,ORM则起到这样的分离作用,使数据库层透明,开发人员真正的面向对象

Grove ORM Development Toolkit包含Grove和Toolkit两部分内容。Grove为ORM提供对象持久、关系对象查询、简单事务处理、简单异常管理等功能。数据持久包括一些对象的Insert、Delete、Update、Retrieve等功能,关系对象查询则提供一些基于对象的复杂关系查询,包括对应到数据库功能的子查询、关联查询(JOIN)、函数支持(count、avg、max、min)、聚合等。Toolkit是基于VS.NET 2002/2003的VSIP开发的外接程序,职责是帮助开发人员快速映射关系数据库中的业务模型到符合Grove要求的映射实体类,以及映射数据库中复杂关系查询到Grove要求的关系映射实体,暂时只提供C#支持。

ObjectSpaces一去不复返,DLinQ浴火重生
.Net Beta2中消失的ObjectSpaces正式成为了过去,而DLinq从ObjectSpaces的灰烬出生了。DLinq是在分析了ObjectSpaces的反馈之后重新设计的ORM Solutions。

DLinq:.NET Language Integrated Query for Relational Data,DLinq和XLinq(for Xml)共同组成了.net 3.0的关键部分——LinQ(:.NET Language Integrated Query ),即语言级集成查询能力。

DLinq是在分析了ObjectSpaces的反馈之后重新设计的ORM Solutions,作为更先进的查询数据库得到对象并且持久化对象的方式,DLinq将不再使用ObjectSpaces的mapping文件方式,而是使用了attribute 来进行mapping的定义。当然现在也有一些采用attribute 方式的Solutions,如XPO:http://www.devexpress.com/Products/NET/XPO/。不过DLinq的第一大特点将是任何ORM方案难以匹敌的,那就是语言级别的查询集成。这是目前ORM阵营(无论是.net、java或者其他)中都难以做到的。毕竟Linq是Anders Hejlsberg在主导(猜测,因为Demo和Channel9 video都是他),而这也是.net 3.0的主要提升啊。

NBear

园子里Teddy开发的NBear大家都非常熟悉,现在已经发布了3.0正式版。NBear包含的组件不仅仅是数据持久层,还包含了IOC,分布式组件和Web组件

Castle ActiveRecord

ActiveRecord是Castle中的一个子项目,现在的版本是RC1。它同样是一个非常优秀的持久层框架,在底层封装了NHibernate,改用Attribute来代替配置文件,这样就不用再像NHibernate那样去编写复杂的配置文件。

iBATIS.NET分为DataMapper和DataAccess两部分,应该说DataMapper是这个框架的核心,DataMapper使用XML文件来实现从实体到SQL statements的映射,学习起来非常简单,是用DataMapper后,我们可以自由的使用SQL语句或者存储过程;DataAccess允许我们通过一个简单的接口来操作数据,而不必了解底层实现的细节

DAAB是微软Enterprise Library中的一个应用程序块,能够帮助我们实现通用的数据访问,

历史博文

标签:, ,
十一月 16, 2007 at 1:54 下午 by yippee 1,022 次
Category: Info
Tags: , ,