Great News: Only One O/RM Shipping in Orcas

I almost can't believe the great news that came from MS today.  That's right, the ADO.NET Entity Framework has been delayed !  I bet most of you think I'm being sarcastic, but I am serious.  I've got at least three reasons why this is good news to me.

First, this gives Linq to Sql a better opportunity to thrive.  Linq to Sql is the "simpler" OR/M that's looking good enough for the vast majority of cases, while ADO.NET EF is far more complex -- and yet most gurus only wanted to talk about the EF.
 
Next, since ADO.NET EF is so complicated, it absolutely must have a great designer ship concurrently, which was not the plan.  MS has apparently accepted this feedback since this is at least the publicly given rationale for the delay in shipping the EF.

Finally, and this one may not pan out, but it is my own hope that ADO.NET EF is being re-aligned somewhat with Linq to Sql.  These two O/RMs are similar enough to share at least some code, and I believe that some of the MS guys have hinted at this too.

So I'm happy that at first there will be one O/RM -- Linq to Sql.  The gurus may be disappointed, but the vast majority of MS devs will be new to O/RMs anyhow, and Linq to Sql will be good enough.  Very much like my simple WilsonORMapper has been so widely used.

4 Comments

  • Hi Paul,

    Yes like you I am actually relieved by this. Linq to SQL will be powerful enough for many apps.

    I am also relieved that I do not need to explain (yet) to our younger devs about these two frameworks.

    Hopefully EF gets delayed longer (another year or two) and fits in better with Linq to SQL.

  • I agree that the Entity Framework is complex enough that not shipping an excellent designer with it makes no sense, but saying that LINQ to SQL is good enough for the vast majority of O/RM scenarios is just plain wrong.

  • Ian: My understanding is that MS is not themselves supplying non-MS providers, but that does not mean that 3rd parties cannot fill that gap.

    Joe: Time will tell I suppose, but look at how many people are happy using my simple ORMapper, and then add MS designer and support, and being built-in.

    Will: I agree Linq to Sql is essentially the ActiveRecord pattern, and that's what really hot in both Rails and NHibernate communities -- simplicity.

  • LINQ to SQL is great and useful in many scenarios as you say, but I think it cannot be called ORM. You can call it an OR-bridge or something, but it lacks mapping capabilities. What you get on the object side is just a direct representation of relational data, and nothing you would expect from an object model. Really mapping relational data to ojbects can be very complex, but tools like the Entity Framework makes it easier.

Comments have been disabled for this content.