從 ASP.NET Core 3.0 移轉至 3.1

作者:Scott Addie

本文說明如何將現有的 ASP.NET Core 3.0 專案更新為 ASP.NET Core 3.1。

必要條件

更新 global.json 中的 .NET Core SDK 版本

如果您依賴 global.json 檔案以特定 .NET Core SDK 版本為目標,請將 version 屬性更新為已安裝的 3.1 SDK 版本。 例如:

{
  "sdk": {
-    "version": "3.0.101"
+    "version": "3.1.101"
  }
}

更新目標架構

在專案檔中,將 Target Framework Moniker (TFM) 更新為 netcoreapp3.1

<Project Sdk="Microsoft.NET.Sdk.Web">

  <PropertyGroup>
-    <TargetFramework>netcoreapp3.0</TargetFramework>
+    <TargetFramework>netcoreapp3.1</TargetFramework>
  </PropertyGroup>

</Project>

更新套件參考

在專案檔中,將每個 Microsoft.AspNetCore.* 套件參考的 Version 屬性更新為 3.1.0 或更新版本。 例如:

<ItemGroup>
-    <PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="3.0.0" />
-    <PackageReference Include="Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation" Version="3.0.0" Condition="'$(Configuration)' == 'Debug'" />
+    <PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="3.1.1" />
+    <PackageReference Include="Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation" Version="3.1.1" Condition="'$(Configuration)' == 'Debug'" />
</ItemGroup>

更新 Docker 映射

針對使用 Docker 的應用程式,請使用包含 ASP.NET Core 3.1 的基本映射。 例如:

docker pull mcr.microsoft.com/dotnet/aspnet:3.1

SameSiteHTTP cookie 的屬性實作在 ASP.NET Core 3.0 和 3.1 之間變更。 如需要採取的動作,請參閱下列資源:

使用 Visual Studio 發佈

在 檔案中 .pubxmlTargetFramework 將 更新為 3.1:

- <TargetFramework>netcoreapp3.0</TargetFramework>
+ <TargetFramework>netcoreapp3.1</TargetFramework>

檢閱重大變更

從 3.0 版移轉至 3.0 版到 3.1 版的重大變更時,檢閱跨 .NET Core、ASP.NET Core 和 Entity Framework Core 的重大變更。

選擇性變更

下列變更是選擇性的。

使用元件標籤協助程式

ASP.NET Core 3.1 引進了 Component標籤協助程式。 標籤協助程式可以取代 RenderComponentAsync<TComponent> 專案中的 Blazor HTML 協助程式方法。 例如:

- @(await Html.RenderComponentAsync<Counter>(RenderMode.ServerPrerendered, new { IncrementAmount = 10 }))
+ <component type="typeof(Counter)" render-mode="ServerPrerendered" param-IncrementAmount="10" />

如需詳細資訊,請參閱Prerender 並整合 ASP.NET Core Razor 元件

ASP.NET Core模組 (ANCM)

如果安裝 Visual Studio 時,ASP.NET Core模組 (ANCM) 不是選取的元件,或已在系統上安裝舊版 ANCM,請下載最新的.NET Core 裝載套件組合安裝程式, (直接下載) 並執行安裝程式。 如需詳細資訊,請參閱 裝載套件組合