2020-03-25 09:30:41 +08:00
---
title: Migrate from ASP.NET Core 3.1 to 5.0
author: scottaddie
description: Learn how to migrate an ASP.NET Core 3.1 project to ASP.NET Core 5.0.
ms.author: scaddie
ms.custom: mvc
2020-04-03 05:16:53 +08:00
ms.date: 04/02/2020
2020-03-25 09:30:41 +08:00
uid: migration/31-to-50
---
# Migrate from ASP.NET Core 3.1 to 5.0
By [Scott Addie ](https://github.com/scottaddie )
This article explains how to update an existing ASP.NET Core 3.1 project to ASP.NET Core 5.0.
> [!IMPORTANT]
> ASP.NET Core 5.0 is currently in preview.
## Prerequisites
# [Visual Studio](#tab/visual-studio)
[!INCLUDE[ ](~/includes/net-core-prereqs-vs-5.0.md )]
# [Visual Studio Code](#tab/visual-studio-code)
[!INCLUDE[ ](~/includes/net-core-prereqs-vsc-5.0.md )]
# [Visual Studio for Mac](#tab/visual-studio-mac)
[!INCLUDE[ ](~/includes/net-core-prereqs-mac-5.0.md )]
---
## Update .NET Core SDK version in global.json
If you rely upon a [global.json ](/dotnet/core/tools/global-json ) file to target a specific .NET Core SDK version, update the `version` property to the .NET 5.0 SDK version that's installed. For example:
```diff
{
"sdk": {
- "version": "3.1.200"
2020-04-03 05:16:53 +08:00
+ "version": "5.0.100-preview.2.20176.6"
2020-03-25 09:30:41 +08:00
}
}
```
## Update the target framework
In the project file, update the [Target Framework Moniker (TFM) ](/dotnet/standard/frameworks ) to `netcoreapp5.0` :
```diff
< Project Sdk = "Microsoft.NET.Sdk.Web" >
< PropertyGroup >
- < TargetFramework > netcoreapp3.1</ TargetFramework >
+ < TargetFramework > netcoreapp5.0< / TargetFramework >
< / PropertyGroup >
< / Project >
```
## Update package references
In the project file, update each `Microsoft.AspNetCore.*` and `Microsoft.Extensions.*` package reference's `Version` attribute to 5.0.0 or later. For example:
```diff
< ItemGroup >
2020-03-26 05:28:33 +08:00
- < PackageReference Include = "Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version = "3.1.2" />
- < PackageReference Include = "Microsoft.Extensions.Caching.Abstractions" Version = "3.1.2" />
2020-04-03 05:16:53 +08:00
+ < PackageReference Include = "Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version = "5.0.0-preview.2.20167.3" / >
+ < PackageReference Include = "Microsoft.Extensions.Caching.Abstractions" Version = "5.0.0-preview.2.20160.3" / >
2020-03-25 09:30:41 +08:00
< / ItemGroup >
```
## Update Docker images
For apps using Docker, use a base image that includes ASP.NET Core 5.0. For example:
```bash
docker pull mcr.microsoft.com/dotnet/core/aspnet:5.0
```
2020-03-26 03:29:03 +08:00
## Review breaking changes
2020-03-25 09:30:41 +08:00
2020-03-26 03:29:03 +08:00
For breaking changes from .NET Core 3.1 to .NET 5.0, see [Breaking changes for migration from version 3.1 to 5.0 ](/dotnet/core/compatibility/3.1-5.0 ). ASP.NET Core and Entity Framework Core are also included in the list.