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.
A couple of months ago we released EF5 Beta 2. Since releasing Beta 2 we have made a number of changes to the code base, so we decided to publish a Release Candidate before we make the RTM available.
This release is licensed for use in production applications. Because it is a pre-release version of EF5 there are some limitations, see the license for more details.
What Changed Since Beta 2?
This Release Candidate includes the following changes:
- Added a CommandTimeout property to DbMigrationsConfiguration to allow you to override the timeout for applying migrations to the database.
- We updated Code First to add tables to existing database if the target database doesn’t contain any tables from the model. Previously, Code First would assume that the database contained the correct schema if it was pointed at an existing database that was not created using Code First. Now it checks to see if the database contains any of the tables from the model. If it does, Code First will continue to try and use the existing schema. If not, Code First will add the tables for the model to the database. This is useful in scenarios where a web hoster gives you a pre-created database to use, or adding a Code First model to a database created by the ASP.NET Membership Provider etc.
This release also includes fixes for the following bugs found in Beta 2:
- Exception in partial trust applications ‘Request for ConfigurationPermission failed while attempting to access configuration section ‘entityFramework’.’
- Migrations: Using a login that has a default schema other than ‘dbo’ for the user causes runtime failures
- Migrations: DateTime format issue on non-en cultures
- Migrations: Migrate.exe does not set error code after a failure
- Migrations: Error renaming entity in many:many relationship
- Migrations: Checking for Seed override fails in partial trust
- Migrations: Better error message when startup project doesn’t reference assembly with migrations
- Migrations: ModuleToProcess deprecated in PowerShell 3 causes warning when installing EF NuGet package
What’s New in EF5?
EF 5 includes bug fixes to the 4.3.1 release and a number of new features. Most of the new features are only available in applications targeting .NET 4.5, see the Compatibility section for more details.
- Enum support allows you to have enum properties in your entity classes. This new feature is available for Model, Database and Code First.
- Table-Valued functions in your database can now be used with Database First.
- Spatial data types can now be exposed in your model using the DbGeography and DbGeometry types. Spatial data is supported in Model, Database and Code First.
- The Performance enhancements that we recently blogged about are included in EF 5.
- Visual Studio 11 includes LocalDb database server rather than SQLEXPRESS. During installation, the EntityFramework NuGet package checks which database server is available. The NuGet package will then update the configuration file by setting the default database server that Code First uses when creating a connection by convention. If SQLEXPRESS is running, it will be used. If SQLEXPRESS is not available then LocalDb will be registered as the default instead. No changes are made to the configuration file if it already contains a setting for the default connection factory.
The following new features are also available in the Entity Model Designer in Visual Studio 11 Beta:
- Multiple-diagrams per model allows you to have several diagrams that visualize subsections of your overall model.
- Shapes on the design surface can now have coloring applied.
- Batch import of stored procedures allows multiple stored procedures to be added to the model during model creation.
You can get EF 5 Release Candidate by installing the latest pre-release version of the EntityFramework NuGet package.
These existing walkthroughs provide a good introduction to using the Code First, Model First & Database First workflows available in Entity Framework:
We have created walkthroughs for the new features in EF 5:
This version of the NuGet package is fully compatible with Visual Studio 2010 and Visual Studio 11 Beta and can be used for applications targeting .NET 4.0 and 4.5.
Some features are only available when writing an application that targets .NET 4.5. This includes enum support, spatial data types, table-valued functions and the performance improvements. If you are targeting .NET 4.0 you still get all the bug fixes and other minor improvements.
We are seeing a lot of great Entity Framework questions (and answers) from the community on Stack Overflow. As a result, our team is going to continue spending more time reading and answering questions posted on Stack Overflow.
We would encourage you to post questions on Stack Overflow using the entity-framework tag. We will also continue to monitor the Entity Framework forum.
Entity Framework Team