Data Driver

Blog archive

Is LINQ to SQL Dead?

Developers are reckoning with the fact that Microsoft's LINQ to SQL data access protocol is getting short shrift in Redmond these days as the company continues to shore up its focus on the second version of the ADO.NET Entity Framework.

Some would argue LINQ to SQL was DOA when it arrived in the .NET 3.5 Framework just over a year ago, but in Microsoft's recent messaging it leaves little doubt that the company doesn't have any major plans to further enhance LINQ to SQL. For many, the blog post by Tim Mallalieu, the program manager for both LINQ to SQL and the Entity Framework during PDC sealed its fate.

"We're making significant investments in the Entity Framework such that as of .NET 4.0 the Entity Framework will be our recommended data access solution for LINQ to relational scenarios," he wrote on Oct. 29. Two days later, as people were returning home from PDC, he added: "We will continue to make some investments in LINQ to SQL based on customer feedback."

Many are saying that is code for LINQ to SQL is finished. "It is dead as a door knob," said Stephen Forte, chief strategy officer at Telerik Inc. and a Microsoft regional director, speaking at a .NET User Group Meeting in New York two weeks ago.

To put Forte's remarks in context, he was giving a talk on the various data access alternatives, including the Entity Framework, ADO.NET Data Services with REST, and ASP.NET Dynamic Data, among others. "In my opinion there is going to be a shakeout; the first casualty will be LINQ to SQL," Forte told the group.

For his part, Mallalieu explains in his Oct. 31 post that Microsoft has been looking for ways to migrate both LINQ to SQL and LINQ to Entities. "At first glance one may assert that they are differentiated technologies and can be evolved separately," Mallalieu wrote at the time. "The problem is that the intersection of capabilities is already quite large and the asks from users of each technology takes the products on a rapid feature convergence path."

Andrew Brust, director of new technology at twentysix New York, said given both are relatively new, Microsoft's moves shouldn't prove disruptive to most developers. "Both are new and neither has gathered so much steam that the victorious emergence of the other could be viewed as a huge imposition," Brust writes in an e-mail. "To me it's like Blu Ray winning out over HD DVD. While people who bought HD DVD players and discs are not happy about the outcome, they represent a small group of early adopters, all of whom were warned of and understood the risks in making an early commitment."

Roger Jennings, principal of Oakland, Calif.-based Oakleaf Systems, authored this month's Visual Studio Magazine cover story covering object/relational mapping using LINQ to SQL. Jennings explains while Microsoft may abandon any significant enhancements of LINQ to SQL, it is forever part of the .NET 3.5 Framework, and despite Microsoft's messaging on the next version of the Entity Framework, many developers may still be inclined to work with LINQ to SQL.

"LINQ to SQL is alive and well," Jennings says. "They can't remove it because it's part of the .NET 3.5 Framework."

Jennings believes many developers will continue to use LINQ to SQL, given the direction Microsoft is taking Entity Framework v2. He for one, laments Microsoft's announcement last month that v2 won't support N-Tier architectures.

Jennings says Microsoft appears to be backing off on others features that were presumed to be slated for EF version 2. In a blog posting Tuesday, Microsoft explained how developers should migrate stored procedures developed with LINQ to SQL to EF using Visual Studio 10.

But, says Jennings, Microsoft made it less certain than earlier messaging that it will make the EF v2 cut. "What they are saying now is support for stored procedures might be implemented in EF v2, instead of will be," Jennings says. "Basically what they are doing is back peddling on their original commitment."

Jennings also pointed to the LINQ to SQL Designer, which allows developers to map stored procedures that return scalars. While acknowledging that such automatic code-generation of methods is missing, Microsoft is now saying "this is something that is being strongly considered for the next release of Entity Framework." Jennings said it was presumed that would make the EF v2 release. "That's called it's fallen off the list," Jennings says. "The upshot is it appears the team is paring their list of what they are going to implement in EFv2 form what the original plan was."

As a result, Jennings believes many developers might still opt to use LINQ to SQL via a Visual Studio add-in developed by Huagati Systems, based in Bangkok, Thailand. Huagati's DBML/EDMX adds menu options for synching LINQ to SQL designer diagrams with changes in the database.

"It's ironic that a lone developer can provide add-ins for features that the ADO.NET Entity Framework v2 team aren't even proposing for their upgrade," Jennings says.

What's your take on this? Drop me a line at [email protected].

Posted by Jeffrey Schwartz on 12/04/2008


comments powered by Disqus

Featured

  • Compare New GitHub Copilot Free Plan for Visual Studio/VS Code to Paid Plans

    The free plan restricts the number of completions, chat requests and access to AI models, being suitable for occasional users and small projects.

  • Diving Deep into .NET MAUI

    Ever since someone figured out that fiddling bits results in source code, developers have sought one codebase for all types of apps on all platforms, with Microsoft's latest attempt to further that effort being .NET MAUI.

  • Copilot AI Boosts Abound in New VS Code v1.96

    Microsoft improved on its new "Copilot Edit" functionality in the latest release of Visual Studio Code, v1.96, its open-source based code editor that has become the most popular in the world according to many surveys.

  • AdaBoost Regression Using C#

    Dr. James McCaffrey from Microsoft Research presents a complete end-to-end demonstration of the AdaBoost.R2 algorithm for regression problems (where the goal is to predict a single numeric value). The implementation follows the original source research paper closely, so you can use it as a guide for customization for specific scenarios.

  • Versioning and Documenting ASP.NET Core Services

    Building an API with ASP.NET Core is only half the job. If your API is going to live more than one release cycle, you're going to need to version it. If you have other people building clients for it, you're going to need to document it.

Subscribe on YouTube