Migrieren von ASP.NET Core 3.0 zu 3.1
Von Scott Addie
In diesem Artikel wird erläutert, wie Sie ein vorhandenes ASP.NET Core 3.0-Projekt auf ASP.NET Core 3.1 aktualisieren.
Voraussetzungen
Visual Studio 2019 Version 16.4 oder höher mit der Workload ASP.NET und Webentwicklung.
Aktualisieren der .NET Core SDK-Version in global.json
Wenn Sie eine Datei als Ziel für eine global.json bestimmte .NET Core SDK-Version verwenden, aktualisieren Sie die version
Eigenschaft auf die installierte 3.1 SDK-Version. Beispiel:
{
"sdk": {
- "version": "3.0.101"
+ "version": "3.1.101"
}
}
Aktualisieren des Zielframeworks
Aktualisieren Sie in der Projektdatei den Zielframeworkmoniker (TFM) auf netcoreapp3.1
:
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
- <TargetFramework>netcoreapp3.0</TargetFramework>
+ <TargetFramework>netcoreapp3.1</TargetFramework>
</PropertyGroup>
</Project>
Aktualisieren von Paketverweisen
Aktualisieren Sie in der Projektdatei das Attribut jedes Microsoft.AspNetCore.*
Paketverweis auf Version
Version 3.1.0 oder höher. Beispiel:
<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>
Aktualisieren von Docker-Images
Verwenden Sie für Apps, die Docker verwenden, ein Basisimage, das ASP.NET Core 3.1 enthält. Beispiel:
docker pull mcr.microsoft.com/dotnet/aspnet:3.1
React zu SameSite-Änderungen cookie
Die SameSite
Attributimplementierungen für HTTP-S cookiewurden zwischen ASP.NET Core 3.0 und 3.1 geändert. Aktionen, die ergriffen werden sollen, finden Sie in den folgenden Ressourcen:
- Arbeiten mit SameSite cookies in ASP.NET Core
- aspnet/Announcements#390
- Anstehende SameSite-Änderungen cookie in ASP.NET und ASP.NET Core
Veröffentlichen mit Visual Studio
Aktualisieren Sie in der .pubxml
Datei auf TargetFramework
3.1:
- <TargetFramework>netcoreapp3.0</TargetFramework>
+ <TargetFramework>netcoreapp3.1</TargetFramework>
Überprüfen von Breaking Changes
Überprüfen Sie breaking changes 3.0-to-3.1 in .NET Core, ASP.NET Core und Entity Framework Core unter Breaking changes for migration from version 3.0 to 3.1.
Optionale Änderungen
Die folgenden Änderungen sind optional.
Verwenden des Komponententaghilfsprogramm
ASP.NET Core 3.1 führt ein Component
Taghilfsprogramm. Das Taghilfsprogramm kann die RenderComponentAsync<TComponent>
HTML-Hilfsmethode in einem Blazor Projekt ersetzen. Beispiel:
- @(await Html.RenderComponentAsync<Counter>(RenderMode.ServerPrerendered, new { IncrementAmount = 10 }))
+ <component type="typeof(Counter)" render-mode="ServerPrerendered" param-IncrementAmount="10" />
Weitere Informationen finden Sie unter Prerendering und Integrieren von Razor-Komponenten in ASP.NET Core.
ASP.NET Core-Modul (ANCM)
Wenn das ASP.NET Core Module (ANCM) bei der Installation von Visual Studio keine ausgewählte Komponente war oder wenn eine frühere Version des ANCM auf dem System installiert war, laden Sie den aktuellen .NET Core Hosting Bundle Installer (direkter Download) herunter, und führen Sie das Installationsprogramm aus. Weitere Informationen finden Sie unter Hosting bundle.