tags:

views:

296

answers:

4

I asked this question reguarding the use of Linq-2-Sql with the Rob Conery's use of the Repository in his MVC Storefront app and got an excellent response from Matt Briggs:

L2S is used to generate the DAL, but the only thing that should know about the DAL is the repository, so a translation is made to his domain objects.

I think L2S (and Robs open source DAL, SubSonic) are great projects, but more designed for smaller, 2-tier apps where something like the repository pattern is over kill. The storefront is also a good illustration of why the additional complexity of NHibernate can be important, he could have saved himself a lot of code by going with something built to handle that sort of scenario, rather then doing it all manually.

So my question is what OR/M tools are out there that are more robust, more stable, and support the Linq IQueryable functionality?

Thanks!

+2  A: 

NHibernate looks promising with Linq (although it is not 100% complete)

PS: I do not recommend DevExpress XPO ORM for this scenario.

Rinat Abdullin
Why not DevExpress XPO ORM?
Ian Ringrose
+1  A: 

Entity Framework

GregD
+3  A: 

I've been using LLBLGen Pro for a couple years now at work. They added LINQ support very quickly. The author of the tool, Frans Bourma, has a nice set of articles on his blog, about using Linq with LLBLGen. The series starts here: http://weblogs.asp.net/fbouma/archive/2007/09/11/developing-linq-to-llblgen-pro-day-0.aspx

You can easily make typed generic lists consisting of the entity objects that represent your database, and use all your favorite Linq functions on them.

If you ever have any problems using it, Frans and his forum members have answered every question I've ever had for them. He even takes new feature requests.

You can find LLBLGen at http://www.llblgen.com/

Matt Andreko
+1  A: 

SignumFramework has its own full Linq provider, but as opposite to Entity Framework, it creates the DB schema from the entities (your classes), not the other way around.

mapache