Merits of .NET ORM data access methods Enity Framework vs. NHibernate vs. Subsonic vs. ADO.NET Datasets
I have recently heard "fanboys" of different .NET ORM methodologies express strong, if not outlandish oppinions of other ORM methodologies. And frankly feel a bit in the dark.
Could you please explain the key merits of each of these .NET ORM solutions?
- Entity Framework
- NHibernate
- Subsonic
- ADO.NET Datasets
I have a good understanding o开发者_运维问答f 1&4, and a cursory understanding of 2&3, but apparently not enough to understand the implied cultural perceptions of one towards the other.
This type of question keeps coming up. You can read more about the different ORMs by looking at the links available from this question:
NHibernate, Entity Framework, active records or linq2sql
These ORMs are all evolving over time and they are fairly complex so any attempt to take a snapshot of the key merits is unlikely to be worth much.
NHibernate is the most feature rich. EFv4 is the next most feature rich (and currently about a month from actual release). Subsonic has a decent amount of breadth of features, but is lacking elsewhere (depth, community, support, etc.). EFv3.5 is not worth discussing, but at least some people seem happy with it.
ADO.NET Datasets don't support Linq and don't support object relational mapping which are generally the key reasons you would choose an ORM instead.
精彩评论