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.