Today, the Entity Framework Core team announces the second release candidate (RC2) of EF Core 5.0. This is a feature complete release candidate of EF Core 5.0 and ships with a "go live" license. You are supported using it in production. This is a great opportunity to start using EF Core 5.0 early while there is still time to fix remaining issues. We're looking for reports of any remaining critical bugs that should be fixed before the final release.
Prerequisites
EF Core 5.0 will not run on .NET Standard 2.0 platforms, including .NET Framework.
- The release candidates of EF Core 5.0 require .NET Standard 2.1.
- This means that EF Core 5.0 will run on .NET Core 3.1 and does not require .NET 5.
- To summarize: EF Core 5.0 runs on platforms that support .NET Standard 2.1.
How to get EF Core 5.0 Release Candidate 2
EF Core is distributed exclusively as a set of NuGet packages. For example, to add the SQL Server provider to your project, you can use the following command using the dotnet tool:
dotnet add package Microsoft.EntityFrameworkCore.SqlServer --version 5.0.0-rc.2.20475.6
This following table links to the RC2 versions of the EF Core packages and describes what they are used for.
Package | Purpose |
---|---|
Microsoft.EntityFrameworkCore | The main EF Core package that is independent of specific database providers |
Microsoft.EntityFrameworkCore.SqlServer | Database provider for Microsoft SQL Server and SQL Azure |
Microsoft.EntityFrameworkCore.SqlServer.NetTopologySuite | SQL Server support for spatial types |
Microsoft.EntityFrameworkCore.Sqlite | Database provider for SQLite that includes the native binary for the database engine |
Microsoft.EntityFrameworkCore.Sqlite.NetTopologySuite | SQLite support for spatial types |
Microsoft.EntityFrameworkCore.Cosmos | Database provider for Azure Cosmos DB |
Microsoft.EntityFrameworkCore.InMemory | The in-memory database provider |
Microsoft.EntityFrameworkCore.Tools | EF Core PowerShell commands for the Visual Studio Package Manager Console; use this to integrate tools like scaffolding and migrations with Visual Studio |
Microsoft.EntityFrameworkCore.Design | Shared design-time components for EF Core tools |
Microsoft.EntityFrameworkCore.Proxies | Lazy-loading and change-tracking proxies |
Microsoft.EntityFrameworkCore.Abstractions | Decoupled EF Core abstractions; use this for features like extended data annotations defined by EF Core |
Microsoft.EntityFrameworkCore.Relational | Shared EF Core components for relational database providers |
Microsoft.EntityFrameworkCore.Analyzers | C# analyzers for EF Core |
Installing the EF Core Command Line Interface (CLI)
As with EF Core 3.0 and 3.1, the EF Core CLI is no longer included in the .NET Core SDK. Before you can execute EF Core migration or scaffolding commands, you'll have to install this package as either a global or local tool.
To install the RC2 tool globally the first time, use:
dotnet tool install --global dotnet-ef --version 5.0.0-rc.2.20475.6
If you already have the tool installed, update it with:
dotnet tool update --global dotnet-ef --version 5.0.0-rc.2.20475.6
It’s possible to use this new version of the EF Core CLI with projects that use older versions of the EF Core runtime.
What's New in EF Core 5 RC2
We maintain documentation covering new features introduced into each release. This release included several bug fixes.
Daily builds
EF Core previews and release candidates are aligned with the .NET 5 release cycle. These releases tend to lag behind the latest work on EF Core. Consider using the daily builds instead to get the most up-to-date EF Core features and bug fixes.
As with the previews, the daily builds do not require .NET 5; they can be used with GA/RTM release of .NET Core 3.1. Daily builds are considered stable.
Contribute to .NET 5
The .NET documentation team is reorganizing .NET content to better match the workloads you build with .NET. This includes a new .NET Data landing page that will link out to data-related topics ranging from EF Core to APIs, Big Data, and Machine learning. The planning and execution will be done completely in the open on GitHub. This is your opportunity to help shape the hierarchy and content to best fit your needs as a .NET developer. We look forward to your contributions!
The EF Core Community Standup
The EF Core team is now live streaming every other Wednesday at 10am Pacific Time, 1pm Eastern Time, or 17:00 UTC. Join the stream to ask questions about the EF Core topic of your choice, including the latest release candidate. Visit the .NET Community Standup page to preview upcoming shows and view recordings from past shows.
Documentation and Feedback
The starting point for all EF Core documentation is docs.microsoft.com/ef/.
Please file issues found and any other feedback on the dotnet/efcore GitHub repo.
Helpful Short Links
The following short links are provided for easy reference and access.
Main documentation: https://aka.ms/efdocs
Issues and feature requests for EF Core: https://aka.ms/efcorefeedback
Entity Framework Roadmap: https://aka.ms/efroadmap
What's new in EF Core 5.x? https://aka.ms/efcore5
Thank you from the team
A big thank you from the EF team to everyone who has used EF over the years!
Arthur Vickers |
Andriy Svyryd |
Brice Lambson |
Jeremy Likness |
Maurycy Markowski |
Shay Rojansky |
Smit Patel |
Thank you to our contributors!
A huge "thanks" to all the community members who have already contributed code or documentation to the EF Core 5 release!
Just can’t imagine building LOBAs without EF!! EF Core team will save your day any day 😉
After almost seven years of development, EF Core has about the same features as EF 6.x already had back then. Now EF Core can be recommended without reservation for new projects. Unfortunately .NET Framework 4.8 is no longer supported, but for new projects it should not be used anyway. The great progress EF Core has made in the last ten months compared to the first six years is very impressive. This gives hope for a...
so i started a fresh app and it looks like something is broken.... i have a table that has no relations to other tables that i started to select from and i get a runtime error that "Include Property 'xxxx.yyyy' not found where xxx is another model and yyy is a property of that table.
so i can only guess that the ef runtime is making a guess on a relation that is not...
Can you provide the details at https://github.com/dotnet/efcore/issues so we can investigate further?
hi sorry for the delay…. i will try it again and post what i get on github ….
BTW: the above mentioned database is a static neurology db that I have been using in other apps for 5 years and have never needed to change…hence no migrations needed. I read that migrations may be an issue with ef for 5.0. I could switch to a cosmos db, but this app is an offline PWA.
Am I understanding correctly you are using SQLite embedded in the browser? We haven’t looked into or tested that scenario; I was only aware of it being possible via some 3rd party modifications. Do you have a repo you are able to reproduce and perhaps share at https://github.com/dotnet/efcore/issues?
Jeremy: I was following you (probably) 20 years ago on your Silverlight blog. I have a blazor webassembly app that has an embedded Sqlite db (ver. 3.0). Originally developed in dotnet 3.1. Tried to install on Azure Mobile Apps, but it seems intent on accepting only 5.0 apps with an Index.html in wwwroot...of course, mine does not. Tried updating the app to dotnet 5.0, but it is giving me grief about...