Is LINQ to SQL Dead or Alive?

Just when I make friends with LINQ to SQL, it appears as though MS is pulling the rug out from under it.

http://blogs.msdn.com/adonet/archive/2008/10/29/update-on-linq-to-sql-and-linq-to-entities-roadmap.aspx

From my little bit of research, EF is way overkill for simple work. But after this announcement is there a point in continuing to use LINQ to SQL?

Beyond the future for LINQ to SQL, doesn't this just generally send a bad signal? Given the speed with which MS is throwing bits against the wall, is it rational to use any of the new bits early? (and that's being kind, it's hardly early for LINQ to SQL!).

For my LINQ to SQL work, I think I'm headed to SubSonic!

Update: A couple of new opinions:

http://ayende.com/Blog/archive/2008/10/31/microsoft-kills-linq-to-sql.aspx

http://codebetter.com/blogs/david.hayden/archive/2008/10/31/linq-to-sql-is-dead-read-between-the-lines.aspx


1) They can't "kill" Linq-to-SQL as it is already part of the .net framework. What they can do is stop adding features to it. That doesn't prevent the thousands of developers out there that are already using L2S from extending it and improving it. Some core areas are tricky to touch but they're solid already and the missing designer features can easily be bolted on.

2) One of the PDC EF sessions show that they have learnt a couple of lessons from the EFv1 fiasco and they are now copy-and-pasting a lot of the goodies from L2S into EF and pretending it is new EF stuff. In other words, L2S version two has just been "relabelled" EF.

3) LINQ as such (Language Integrated Query) is the best thing since sliced ice-cream and it can be used with a lot of other things than L2S (Linq to objects, Linq to entities, Linq to XML, Linq-to-anything). So the DP group's attempt to force [the vast masses of] L2S adopters over to [the less popular and currently flawed] Entity Framework is no reason to not learn Linq.

Also see this thread (which is what I believe partly triggered Tim's blog post): http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=4061922&SiteID=1

Update 1: The Dec 2008 issue of Visual Studio Magazine cover story by Roger Jennings is a good read on the topic, with some L2S vs EF comparisons: http://visualstudiomagazine.com/features/article.aspx?editorialsid=2583

Update 2: Anders Hejlsberg was quoted in Redmond Developer News as saying "LINQ to SQL is not dead. I can assure you, it is not dead. Nothing ever goes away. We have never done that and we never will."

http://reddevnews.com/blogs/weblog.aspx?blog=3016


There's an ambiguity to your question that needs to be resolved.

LINQ != LINQ to SQL

There are a whole bunch of LINQ technologies and providers:

  • Linq to SQL;
  • Linq to Entities;
  • Linq to Objects;
  • Linq to XML;
  • ... and those are just the ones from Microsoft. There are non-MS providers too, including NHibernate.

    The blog post you linked talks only about Linq to SQL.

    The key advantage to LINQ is that you can learn and use one query syntax and reuse it across multiple technologies.

    Given this, I'd suggest that any perceived lack of a future for "Linq To SQL" is irrelevant, as skills you gain in writing LINQ Queries will be transferrable to other tools in the future.


    We are not killing LINQ to SQL. We are optimizing for EF, but LINQ to SQL is definitely not being killed off :)

    - Scott / Microsoft.

    链接地址: http://www.djcxy.com/p/51334.html

    上一篇: 什么是领先的LINQ for JavaScript库?

    下一篇: LINQ to SQL是死还是活?