Entity Framework continues to have performance problems when using larger EDMX models to generate classes. “If the EDMX only has one entity type materialization takes 840 ms […] but when the EDMX contains a richer model, for example one with 67 entity types and 92 associations, the same test takes 7246 ms to complete”.
Julie Lerman recently noted that Entity Framework can work with classes having private constructors and private property setters, which promotes persistence ignorance. We explore further.
For many years NHibernate reigned as the premier ORM for the .NET framework and despite the successes of Entity Framework many people still consider it their first choice for new projects. But a lack of developers may severely hamper its future.
Developer Ricardo Peres of Portugal has published a seemingly unbiased comparison of the leading .NET ORMs: NHibernate and Entity Framework. While we recommend anyone considering both to read his article, Differences Between NHibernate and Entity Framework, we are going to tough on some of the key differences.
Version 3.5 of the ORM tool LLBLGen Pro was released this week, and includes updates to Entity Framework and NHibernate functionality, designer improvements, and several updates to the runtime, such as support for OData and SQL Server 2012.
S#arp Lite is an effort to make S#arp Architecture more accessible to all developers; this scaled-back version includes a project template set up to connect to a database via NHibernate, a set of reusable class libraries, a base repository, and a sample project.
NHibernate 3.0 is the first major release of the popular ORM in over a year. With the release it has changed the CLR version to .NET 3.5. This allows the creation of the QueryOver API, while replaces the string-based ICriteria expressions with strongly typed lambda expressions. This is in addition to the built-in LINQ provider.
The latest NHibernate developments include: the release of NHibernate 3.0.0 Alpha 1, NHibernate Profiler supporting NHibernate 3.0, and HQL Language Service for Visual Studio.
LLBLGen Pro is an ORM tool which supports multiple persistence frameworks: LLBLGen Pro Runtime, Entity Framework, NHibernate and LINQ to SQL. Other new features are: support for .NET 4.0, model-first or database-first development mode, model view, project validation.
Recently, a post by Oren Eini (a.k.a. Ayende Raheim) touched off a debate around the respective merits and capabilities of NHibernate and Entity Framework 4.0, two .NET-based Object/Relational Maping frameworks. InfoQ explored this debate in more detail to understand some of the perspectives which were given.
Sadly the terms “ORM” and “performance problems” often travel together. By hiding the underlying SQL from the developers, ORMs can offer a huge productivity boost. Unfortunately they also make it easy to generate ridiculously bad queries without realizing it. And without stored procedures to cross reference, finding the offending code without an ORM-specific profiler can be quite tricky.
James Gregory, the owner of the Fluent NHibernate project, has announced his project has reached the 1.0 milestone and it is currently a Release Candidate.
NHibernate Linq 1.0 has been released. Based on the stable provider from NHibernate Contrib, NHibernate Linq 1.0 is a LINQ provider that supports most operations available through the NHibernate criteria query API.
Eric Nelson, a Developer Evangelist for Microsoft and Technical Editor of MSDN UK Flash, has compiled a list of 23 .NET open source projects mostly based on recommendations sent by UK developers. Other great projects did not make it into the list, while Microsoft’s contribution include: ASP.NET MVC, DLR, IronRuby, IronPython, MEF.
Ayende Rahien have posted 13 blog posts describing the different NHibernate mappings in detail with examples. Ayende is one of the contributors to NHibernate, the creator of NHibernate Profiler and have been using NHibernate for many years.