I am looking for a well rounded ORM that handle concurrency with ease for .NET. It should also be threadsafe.
Any recommendation? Pls elaborate why you choose this particular ORM.
I am looking for a well rounded ORM that handle concurrency with ease for .NET. It should also be threadsafe.
Any recommendation? Pls elaborate why you choose this particular ORM.
The best thing to use today is still NHibernate. It has been around the longest (see Hibernate for java) and just gets it done. Also, there are many tools out now that make working with it much easier. It blows LINQ to SQL out of the water in terms of features (though not ease of use). The Entity Framework in version 1 is not ready for use. The next version (Entity Framework 4.0) will be much better and may be worth looking at once it is out.
I didn't understand the threadsafe part of it.Assuming that you are referring to db access I'd say Nhibernate does this best IMHO(though handling concurrency is fundamental to any ORM).
Ideally I would want to live in a world where each one gets his turn for the pie. Unfortunately that won’t happen and until then I would try one of these strategies with Nhibernate.
Optimistic, Dirty, Versioned or Pessimistic
Apply these based on your need.
Your choice of an ORM should be based on how active the community and eco-system behind it is and not just by its feature set(though that's a factor of the community).
Additionally, take a look at NHProf , Linq to NH , Nhibernate Search and Nhibernate Validator
If you can afford it IdeaBlade's DevForce is a sophisticated framework that goes beyond an ORM tool. It would be my recommendation for LOB enterprise applications.
Is a comprehensive platform that enables enterprise .NET development and deployment for n-tier environments. Provides sophisticated object persistence, client-side caching, advanced data binding, business rule validation, support for offline/disconnected operations, and support for publishing and consuming Web Services, among its many features. It also includes the Business Object Server (BOS), an application server that provides scalability, security, and enables n-tier deployment of .NET applications across the internet.
LLBLGen Pro is one of the good ones. I am using it in my project and it is doing well. I can not compare other O/R mappers available with LLBLGen pro because I am using O/R Mapper first time. It is not free but I think it is good one to spend money on.
These links might help.
http://weblogs.asp.net/fbouma/archive/2004/03/06/85125.aspx http://www.llblgen.com/defaultgeneric.aspx
But do tell us which O/R Mapper you choose for your project. This will help us to make decision in future.