--- title: Migrate from ASP.NET Core 3.0 to 3.1 author: rick-anderson description: Learn how to migrate an ASP.NET Core 3.0 project to ASP.NET Core 3.1. ms.author: wpickett ms.custom: mvc ms.date: 07/02/2020 uid: migration/30-to-31 --- # Migrate from ASP.NET Core 3.0 to 3.1 By [Scott Addie](https://github.com/scottaddie) This article explains how to update an existing ASP.NET Core 3.0 project to ASP.NET Core 3.1. ## Prerequisites # [Visual Studio](#tab/visual-studio) [!INCLUDE[](~/includes/net-core-prereqs-vs-3.1.md)] # [Visual Studio Code](#tab/visual-studio-code) [!INCLUDE[](~/includes/net-core-prereqs-vsc-3.1.md)] # [Visual Studio for Mac](#tab/visual-studio-mac) [!INCLUDE[](~/includes/net-core-prereqs-mac-3.1.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 3.1 SDK version that's installed. For example: ```diff { "sdk": { - "version": "3.0.101" + "version": "3.1.101" } } ``` ## Update the target framework In the project file, update the [Target Framework Moniker (TFM)](/dotnet/standard/frameworks) to `netcoreapp3.1`: ```diff - netcoreapp3.0 + netcoreapp3.1 ``` ## Update package references In the project file, update each `Microsoft.AspNetCore.*` package reference's `Version` attribute to 3.1.0 or later. For example: ```diff - - + + ``` ## Update Docker images For apps using Docker, use a base image that includes ASP.NET Core 3.1. For example: ```console docker pull mcr.microsoft.com/dotnet/aspnet:3.1 ``` ## React to SameSite cookie changes The `SameSite` attribute implementations for HTTP cookies changed between ASP.NET Core 3.0 and 3.1. For actions to be taken, see the following resources: * * [aspnet/Announcements#390](https://github.com/aspnet/Announcements/issues/390) * [Upcoming SameSite cookie changes in ASP.NET and ASP.NET Core](https://devblogs.microsoft.com/aspnet/upcoming-samesite-cookie-changes-in-asp-net-and-asp-net-core/) ## Publish with Visual Studio In the `.pubxml` file update the `TargetFramework` to 3.1: ```xml - netcoreapp3.0 + netcoreapp3.1 ``` ## Review breaking changes Review 3.0-to-3.1 breaking changes across .NET Core, ASP.NET Core, and Entity Framework Core at [Breaking changes for migration from version 3.0 to 3.1](/dotnet/core/compatibility/3.0-3.1). ## Optional changes The following changes are optional. ### Use the Component Tag Helper ASP.NET Core 3.1 introduces a `Component` Tag Helper. The Tag Helper can replace the `RenderComponentAsync` HTML helper method in a Blazor project. For example: ```diff - @(await Html.RenderComponentAsync(RenderMode.ServerPrerendered, new { IncrementAmount = 10 })) + ``` For more information, see . ## ASP.NET Core Module (ANCM) [!INCLUDE[](~/includes/hosting-bundle.md)]