微軟自家的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.多面向對象框架支持