What the mainstream ORM framework [turn] .NET (C #) have, SqlSugar, Dapper, EF or ...

Original link: https://segmentfault.com/a/1190000011676744

Foreword

In the previous article, for everyone to share a " What is ORM? Why ORM? On the use of ORM and the pros and cons . " So, in the current .NET (C #) world, what mainstream ORM, SqlSugar, Dapper, Entity Framework (EF) or ServiceStack.OrmLite? Or is there a better ORM you recommend it? If so, does not prevent but also to share with everyone.

.NET (C #) mainstream ORM overview

Share this article today present in .NET (C #) several popular ORM framework to collect, such as (the following frame are open-source framework, hosted on github):

SqlSugar

SqlSugar is the development of a people-based developer of .NET ORM framework, it can run on .NET 4. + & .NET CORE high-performance, lightweight ORM frameworks, database access a number of .NET Framework easiest to use technology.

Features:

  • Open source, free
  • Domestic developers to develop and maintain;
  • Support for .NET Core;
  • Support mainstream database, such as: SQL Server, MySql, Oracle, Sqlite and so on;
  • Timely maintenance updates

Recommended rating: ★★★★ ☆


PetaPoco

PetaPoco: POCO objects and the ORM framework lightweight database mapping.

Features:

  • Open source, free

Recommended rating: ★★★★ ☆


linq2db

linq2db is a fast, ORM framework lightweight, type safe POCO objects and database mapping. From the frame is, linq2db is for example: Dapper, further encapsulated micro PetaPoco the ORM, but it is not as bulky Entity Framework. It did not achieve the status tracking, processing entity needs its own state of change and so on.

Recommended rating: ★★★★ ☆


Dos.ORM

Dos.ORM (formerly Hxj.Data) released in 2009, 2015 officially open. In the development process with reference to the NBear MySoft, I learned some of their essence, adding new ideas, while the Lambda syntax reference EF numerous extensions. This component has been used in hundreds of mature projects. Official Website: HTTP: //ITdos.com/Dos/ORM/Inde ...

Features:

  • Open source, free
  • Simple to use, 0 learning costs. Easy to use, according to sql writing habits writing C # .NET code. Powerful
  • High-performance, close to the handwritten Sql
  • Small volume (less than 150kb, only a dll)
  • Perfect support Sql Server (to the latest version 2000), MySql, Oracle, Access, Sqlite and other databases
  • Lambda expressions support a lot of writing, the highest domestic ORM support, open source ORM China ranked the first three
  • Not like the XML configuration of NHibernate, EF do not like the various databases connected to the drive
  • Follow the MIT open source license, except do not allow renamed, other random custom modifications

Recommended rating: ★★★ ☆☆


ServiceStack.OrmLite

ServiceStack.OrmLite goal is to provide a convenient, without interference, regardless of the type of package without the RDBMS configuration, and maintain a high degree of fit SQL, visual presentation API, you can generate predictable SQL.
ServiceStack.OrmLite purpose: Fast, Simple, Typed ORM for .NET

Features:

  • Revenue and costs (free version only supports a single database table 10)

Recommended rating: ★★★ ☆☆


Entity Framework (EF)

ADO.NET Entity Framework is Microsoft's ADO.NET object correspondence between the foundation developed out of the (O / R Mapping) solutions. Once the frame, but then separated from version 6 .NET Framework part of the .NET Framework.

Recommended rating: ★★★ ☆☆


NHibernate

Object-oriented NHibernate is a .NET environment / relational database mapping tool. Object / relational mapping (object / relational mapping, ORM) this term means a technique for mapping the object model representation of the object to SQL-based relational model of data structure to.

Features:

  • Open source, free
  • Batch write
  • Batch read / Multiple Query feature (my understanding is talking Future?)
  • The bulk of the collection is loaded
  • Set with lazy = "extra" of
  • Set of filters and paging set
  • Second-level cache (secondary cache NH actually looks very simple?)
  • Integration and Extensibility
  • Code generation, and reduce the amount of code developers to sql, sql developers from opening, and ADO.NET transaction, caching bottom

Recommended rating: ★★★ ☆☆


Massive

Massive: small, dynamic micro-ORM framework.

Recommended rating: ★★★ ☆☆


These are part of the author collected currently in .NET (C #) popular ORM framework.

If you have any other better ORM, welcome message exchange.

If you think this article helpful to you or others, please point a praise it.

Guess you like

Origin www.cnblogs.com/Violety/p/12144669.html