从 ASP.NET Core 3.1 迁移到5。0Migrate from ASP.NET Core 3.1 to 5.0
本文内容
作者:Scott Addie
本文介绍如何将现有 ASP.NET Core 3.1 项目更新为 ASP.NET Core 5.0。
重要
ASP.NET Core 5.0 目前为预览版。
必备条件Prerequisites
- 具有ASP.NET 和 web 开发工作负荷的Visual Studio 2019 16.6 或更高版本
- .NET 5.0 SDK 或更高版本
Visual Studio Code 说明使用用于 ASP.NET Core 的 .NET Core CLI 开发功能,如项目创建。可在任何平台(macOS、Linux 或 Windows)上或在任何代码编辑器中遵循这些说明。如果使用 Visual Studio Code 以外的其他内容,则可能需要进行少量更改。
版本8.6 中的预期支持
在 global.json 中更新 .NET Core SDK 版本Update .NET Core SDK version in global.json
如果依赖于全局 json文件来面向特定的 .NET Core SDK 版本,请将 version
属性更新为安装的 .NET 5.0 SDK 版本。例如:
{
"sdk": {
- "version": "3.1.200"
+ "version": "5.0.100-preview.1.20155.7"
}
}
更新目标框架Update the target framework
在项目文件中,将目标框架名字对象(TFM)更新为 netcoreapp5.0
:
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
- <TargetFramework>netcoreapp3.1</TargetFramework>
+ <TargetFramework>netcoreapp5.0</TargetFramework>
</PropertyGroup>
</Project>
更新包引用Update package references
在项目文件中,将每个 Microsoft.AspNetCore.
和 Microsoft.Extensions.
包引用的 Version
属性更新为5.0.0 或更高版本。例如:
<ItemGroup>
- <PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="3.1.2" />
- <PackageReference Include="Microsoft.Extensions.Caching.Abstractions" Version="3.1.2" />
+ <PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="5.0.0-preview.1.20124.5" />
+ <PackageReference Include="Microsoft.Extensions.Caching.Abstractions" Version="5.0.0-preview.1.20120.4" />
</ItemGroup>
更新 Docker 映像Update Docker images
对于使用 Docker 的应用,请使用包含 ASP.NET Core 5.0 的基本映像。例如:
docker pull mcr.microsoft.com/dotnet/core/aspnet:5.0
查看重大更改Review breaking changes
有关从 .NET Core 3.1 到 .NET 5.0 的重大更改,请参阅从版本3.1 迁移到5.0 的重大更改。ASP.NET Core 和 Entity Framework Core 也包含在列表中。