Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Has Microsoft confirmed their stance on LINQ to SQL end-of-life?

I'm trying to make an educated decision about what ORM to use for a number of legacy applications I'm responsible for porting to MVC 2. The ORMs I've looked at are LINQ to SQL, LINQ to Entities and nHibernate. L2S seemed to be the easiest, but I've found numerous articles and blog entries stating that Microsoft would no longer be updating it after .NET 3.5. With that in mind, I've been working with Entities a bit, but have found that it is cumbersome and overcomplicated for the small applications I'm working with (same with nHibernate). I recently purchased "Pro ASP.NET MVC 2 Framework" by Steven Sanderson, in which he chose to use LINQ to SQL as his ORM, at one point stating:

 I'm aware that some developers have expressed concerns that Microsoft might 
 deprecate LINQ to SQL in favor of Entity Framework. However, Microsoft included 
 and enhanced LINQ to SQL in .NET 4, so these fears cannot be entirely justified. 

I was unaware that they had made changes, nor had I bothered to look, as the general community opinion seemed to be that L2S was approaching end-of-life, to be replaced by L2E. Damien Guard wrote about some of the changes on his blog (http://damieng.com/blog/2009/06/01/linq-to-sql-changes-in-net-40) for those interested.

My hope is that someone can shed some light on Microsoft's position regarding LINQ to SQL. The applications I'm porting and updating have a (roughly) 8-10 year life span, so I'd prefer to adopt a technology that won't be abandoned in that time-frame and leave my replacements up creek. (Of course, if anyone has any other recommendations for small shops - our database has less than 5 million records - I'd love to hear them.)

like image 258
homogenized Avatar asked Aug 04 '10 16:08

homogenized


People also ask

Is LINQ to SQL still supported?

LINQ to SQL was the first object-relational mapping technology released by Microsoft. It works well in basic scenarios and continues to be supported in Visual Studio, but it's no longer under active development.

Which is better Entity Framework or LINQ to SQL?

First off, if you're starting a new project, use Entity Framework ("EF") instead of Linq to SQL because it now generates far better SQL (more like Linq to SQL does) and is easier to maintain ("L2S").

What is new in Entity Framework Core?

Split queries EF Core 5.0 now allows a single LINQ query including related collections to be split into multiple SQL queries. This can significantly improve performance, but can result in inconsistency in the results returned if the data changes between the two queries.

How does LINQ to SQL work?

In LINQ to SQL, the data model of a relational database is mapped to an object model expressed in the programming language of the developer. When the application runs, LINQ to SQL translates into SQL the language-integrated queries in the object model and sends them to the database for execution.


1 Answers

The message I'v received is: looking forward we should really use Entity Framework in as much as possible; LINQ to SQL is basically in maintenance mode: it won't go away any time soon but it won't evolve significantly either. Meanwhile Entity Framework is evolving and also being integrated with other products/frameworks like RIA Services or WCF Data Services.

like image 120
Édgar Sánchez Gordón Avatar answered Sep 17 '22 12:09

Édgar Sánchez Gordón