Update on the Entity Framework in .NET 4 and Visual Studio 2010


The information in this post is out of date.

Visit msdn.com/data/ef for the latest information on current and past releases of EF.


Since we shipped the .NET Framework 3.5 SP1 and Visual Studio 2008, we’ve been working on the next version of the Entity Framework.  During this release, we’ve been focused on 2 key areas:  1) enabling scenarios with the Entity Framework that you’ve told us to focus on and 2) laying the groundwork for Reporting Services to build on top of the Entity Framework.  In order to deliver on the first focus, enabling the scenarios you care about, we needed to provide early views into our designs (something we had not previously done publically) and incorporate your feedback on these designs back into the product.  To do this, we started the EFDesign blog in June 2008 and regularly posted early designs to elicit feedback.  In the coming weeks and months, we’ll first provide a quick sneak peek and then a more in depth series on the scenarios and functionality we’ve been targeting in the .NET Framework 4.0 and Visual Studio 2010 release.

The core of these blog series will be focused on the primary scenarios and patterns we’ve been working on throughout this release.  They are:

Development Approaches

  1. Model First development –  We’ve added functionality to the ADO.NET Entity Data Model designer to start from a Model and then have T-SQL and customized code generated.
  2. Testing applications that use the Entity Framework – Along with the patterns above we’ve added an interface, along with guidance, that enables better testability of applications that use the Entity Framework.

Architectural Concerns

  1. Persistence Ignorance – Enabling developers to use their own classes without needing to introduce interfaces or other elements specific to the Entity Framework. Check out the POCO Series here.
  2. Applications Patterns – Discussing patterns like the Repository and UnitOfWork patterns with guidance on how to use them with the Entity Framework
  3. Building N-Tier applications with the Entity Framework – Adding API’s and templates that make building N-Tier applications with the Entity Framework much easier.

Entity Framework Improvements

  1. Customization of Code Generation – Integration with the ADO.NET Entity Framework Designer and T4 Templates in Visual Studio to provide developer controlled code generation.
  2. Small things that make development of applications simpler – Adding things like Pluralization and Singularlization in the model, lazy loading, and more stored procedure mapping make building applications that use the Entity Framework much easier.
  3. Customizing Queries – Adding support for existing LINQ operators, recognizing a larger set of patterns with LINQ, writing model defined functions along with the ability to use these in LINQ, and a number of other ways to create and customize queries.
  4. SQL Generation Readability Improvements – Improving the readability, along with TSQL performance optimizations, of the generated queries to make it much easier to understand what is happening
  5. And much, much more

In the coming months we’ll be discussing all this plus a number of other interesting topics.  Keep coming back during this time to see what we’ve added and provide feedback on what you see.


The ADO.NET Entity Framework Team