Frans Bouma’s blog : Why change-tracking has to be part of an entity object
Frans has a bang-up article on yet another problem with LINQ. Its more fuel for the flames of discontent (so to speak). I’ve already pointed out that from a very pragmatic standpoint LINQ is a PITA. Frans adds to that some detailed under the hood observations of why this thing is such a failure in a great many web scenarios.
Maybe MS shouldn’t try so hard to get into the territory that is much better handled by mature existing tools. That reminds me ….. Can somebody tell me why they are also working on a “Community-Server Killer”. If I were Telligent I would port my code base to RoR. What else can a small vendor do ? It has to be tremendously frustrating for them.
Anyway, here is what Frans says:
Recently, Andres Aguiar started a discussion between him and Udi Dahan about change tracking in the upcoming Entity Framework (EDM) from Microsoft. Basicly, Andres described why it was unfortunate that the EDM doesn’t have change tracking inside the entity objects itself and gave some examples why that’s unfortunate. Udi pulled the discussion into SOA land, and I think that was unfortunate as well, because there’s a much wider used example which will illustrate why Andres is right and the rest is wrong: ASP.NET 2-way databinding. This article will be very technical, and it refers to stuff you won’t run into most of the time, as it’s functionality which is deep inside controls you just use. However to be able to use these controls and these features available to you in ASP.NET 2.0, they shouldn’t force you to implement a lot of plumbing code yourself, as the sole reason you’re using these controls is because they are the plumbing, they should take care of all that, why else bother using them?
Comments
Comment from Dan
Date: 4/10/2007, 6:00 am
LINQ should be called STINQ.
Let’s see…inserting command-line syntax in the middle of OO code, so we’re already starting on the wrong foot…
…and this command-line syntax isn’t exactly SQL…
…and it isn’t exactly C# or VB…
…and it tries to treat collections like tables which aren’t really the same thing (relationships and all that, etc.)…
…and then we’re supposed to use it in its alpha-quality state while excellent mature tools like LLBLGen are readily available.
Yeah sure, I’ll give up LLBLGen for STINQ.
Write a comment