tags:

views:

849

answers:

3

Hi, I am using SQL Server 2005 in a project. I have to decide about datalayer. I would like to use LINQ in my project. I saw SubSonic 3 supporting LINQ and I also have option for LINQ to SQL, because i can have typed lists from LINQ to SQL.

I am wondering what is different between LINQ to SQL and Subsoinc 3 LINQ, Which is beneficial?

Thanks! JAMIL

+6  A: 

In case you haven't read this already, the Subsonic site has a pretty lengthy overview of some differences between LinqToSql and Subsonic (and NHibernate).

http://subsonicproject.com/docs/Comparisons

Outside of specific differences of the technologies, you may also want to consider the implications of going with an open-source 3rd party tool vs an official Microsoft product. There are pros and cons to each! ;)

Kurt Schindler
A: 

LinqToSql has many very significant downsides and it's almost never the right solution.

SubSonic 3 has many of the benefits of LinqToSql with few of the downsides.

If you must choose between these two, SubSonic is a very clear winner.

In the end, NHibernate is significantly better than both and for most projects it is clearly the best way to go.

That said, you can go a long way with SubSonic and it is a good product. You just need to be aware that there are limitations and places it won't go that NHibernate will go.

Michael Maddox
Can you please give examples of limitations and places SubSonic won't go that NHibernate will go?
Khalil Dahab
Please elaborate.
FreshCode
A: 

Hi Michael,

although NHibernatebe greater ORM than Linq2SQL, NHibernate Linq is very very limited.

If the idea is to use LINQ, choose Linq2SQL, because Subsonic also have several limitations.

If you remove LINQ from equation, then NHibernate will be the best solution, but only for complex and bigger applications.

For small ones, uses Subsonic or even Linq2SQL

muek