I'm looking for an ORM that offers complete or near-complete LINQ support.
LINQ to SQL
– Supports about everything inside of LINQ (.Contains, Math.Log, etc)
– Cannot eager load relationship properties without creating a new datacontext
ADO.NET Entity Framework
– Terrible LINQ support (lots of missing features).
– Great mapping features
– Can eager load on demand with .Include methods on an ObjectQuery<>
LightSpeed
– Great LINQ support missing some features (.Contains within a Where)
– Some of the SQL generated is very inefficient.
None of these seem to fit just perfectly, I honestly wish I could take bits and pieces from each. I personally really like ADO.NET EF except the features it is missing make it just frustrating to use.
I know some people praise NHibernate up and down and I'm not knocking it but I spent today trying it out and it's ok but it's LINQ support is not that great.
Best Answer
NHibernate with Linq to NHibernate