OR/M Madness in Microsoft

It looks like someone in Microsoft is loving OR/M even more than I do. They are going to release two competing OR/M frameworks. DLinq (now Linq for SQL) and Linq for Entities.

I guess that no one in microsoft has read In Search of Stupidity: Over 20 Years of High-Tech Marketing Disasters. It is going to Windows 9x vs Windows NT all over again.

  • How are you going to explain to a customer what is the difference between the two?
  • How are they going to choose?
  • What is the upgrade path between the two?
  • Which customer exactly is going to use the "simple but limited" framework?
  • What about future development of DLinq? Will it try to reach feature parity with Linq For Entities?

Someone needs their head examined, I think.

I have no problem whatsoever with giving different levels of abstraction for different problems (see NHibernate & Active Record, for instance) but those are two different framework from the same vendor to do the same thing.

Imagine the architecture talks:

  • Now we will talk about the data access. We have decided to use Microsoft's OR/M.
  • Which Microsoft OR/M ? There is Linq for SQL and Linq for Entities.
  • Huh? What is the difference?
  • No one know for sure. They say that Linq for SQL is for simple stuff, and Linq for Entities is for complex things.
  • We are not build simple software, we will use Linq for Entities. But if they need to offer a second framework, just to make us use their OR/M, maybe this Linq for Entities is too hard to use?

Print | posted on Tuesday, June 13, 2006 5:27 AM

Feedback


Gravatar

#  6/13/2006 7:58 AM Sachin Rao

As far as I understood, Linq is very much a part of DLinq, So, DLinq maps entities to the db while you still query on the entities, much like HQL.

At least that's the impression I got from Scott Guthrie's examples on his blog. Is this not correct?

If they are going to be two different products to do exactly the same thing, then I agree, its absolutely wacko!

I kinda think they are going to be complementary to each other. Or at least that is my assumption.

Sachin


Gravatar

#  6/13/2006 8:09 AM Sachin Rao

Here are the two tutorials from Scott that I was talking about:

http://weblogs.asp.net/scottgu/archive/2006/05/14/Using-LINQ-with-ASP.NET-_2800_Part-1_2900_.aspx

http://weblogs.asp.net/scottgu/archive/2006/06/04/Using-DLINQ-with-ASP.NET-_2800_Part-2-of-my-LINQ-series_2900_.aspx

It does seem as if LINQ is just query support for entities.

DLINQ does seem to translate LINQ queries into sql.

Sachin


Gravatar

#  6/13/2006 8:16 AM Sachin Rao

Wow!

Wonder how this one'll pan out.

Cheers
Sachin


Gravatar

# New and Notable 100! The Big 100! 2/3/2007 7:48 AM codebetter.com

Comments have been closed on this topic.