2012 .NET ORM 介绍
微软自家的LINQ to SQL, ADO.NET Entity Framework不多说。
商业:
1.LightSpeed(免费版比较垃圾。表限制8个。另此厂商有NHibernate Designer工具)
http://www.mindscapehq.com/products/lightspeed
2. Entityspaces(支持Access数据库,比较看好,求破解)。
http://www.entityspaces.net/portal/Home.aspx3.OpenAccess(有比较给力的免费版。)
http://www.telerik.com/products/orm.aspx
4.eXpressPersistent Objects(XPO)(支持Access)
http://www.devexpress.com/products/NET/ORM/5.DataObjects.Net(自称对LINQ支持比较给力。但支持数据库比较少。有老版本的开源版)
6.LLBLGen Pro (虽然支持的数据库比较多。但LINQ to SQL 只能用于MS SQL SERVER)
http://www.llblgen.com/defaultgeneric.aspx7.LinqConnect , Entity Developer 和 dotConnect Universal (产品比较乱。对LINQ支持比较给力。有自动生成代码和可视化的工具。)
http://www.devart.com/dotconnect/8.DataDirect Connect for ADO.NET(这个是ORM吗?应该和微软的产品合用)
http://www.datadirect.com/products/net/index.html
9.ALINQ(国人开发。前期反编译了微软的SQL to SQL。后来自己写了各数据库provider发展而成。有免费版。中小型项目都可以用。但国人开发产品似乎充满困境。作者也开发了NHIbernate的代码生成器)
开源
1.NHibernate(大名鼎鼎,发展不错。有很多书可学。)
http://nhforge.org/Default.aspx
2.Castle ActiveRecord (建立在NHibernate之上,用.net attribute 映射。不过基本都用NHibernate了。Castle有好多项目可学习参考)
http://www.castleproject.org/castle/projects.html
3.SubSonic (性能是问题。更新缓慢)
http://opf3.codeplex.com/
5.MyBatis.NET (也不更新了。)
http://code.google.com/p/mybatisnet/
6.BLToolkit(网站貌似被和谐。这个看介绍挺不错。支持的数据库也不少。性能据说也行。但似乎国内没人用。)
http://bltoolkit.net/https://github.com/igor-tkachev/bltoolkit
7.MyGeneration(代码自动生成工具和ORM。有各种模板。停止更新了)
开源微型ORM(?)
不多介绍: Dapper ,Simple.Data ,PetaPoco ,FluentData, massive,LINQtoExcel(这个是读取Excel里的数据类库)
以上就是市面上比较常见的.net ORM框架。其实比较完美的ORM框架应该是满足:
1.对象与数据库的映射
2.对象缓存
3.可视化设计和代码生成工具
4.支持多数据库
5.动态查询
6.延迟加载
7.非侵入式持久化
8.性能优良
9.支持存储过程和事务
10.多面向对象框架支持