Effectuer une migration d’ASP.NET Core 3.0 vers 3.1
Par Scott Addie
Cet article explique comment mettre à jour un projet ASP.NET Core 3.0 existant vers ASP.NET Core 3.1.
Prérequis
- Visual Studio 2019 version 16.4 ou ultérieure avec la charge de travail Développement ASP.NET et web
- Kit SDK .NET Core 3.1
Mettre à jour la version du kit SDK .NET Core vers global.json
Si vous comptez sur un fichier global.json pour cibler une version spécifique du kit SDK .NET Core, mettez à jour la propriété version
vers la version du 3.1 du kit de développement logiciel (SDK) installé. Par exemple :
{
"sdk": {
- "version": "3.0.101"
+ "version": "3.1.101"
}
}
Mettre à jour la version cible de .Net Framework
Dans le fichier projet, mettez à jour le moniker de framework cible (TFM) vers netcoreapp3.1
:
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
- <TargetFramework>netcoreapp3.0</TargetFramework>
+ <TargetFramework>netcoreapp3.1</TargetFramework>
</PropertyGroup>
</Project>
Mettre à jour les références de package
Dans le fichier projet, mettez à jour chaque attribut Version
de la référence du package Microsoft.AspNetCore.*
vers la version 3.1.0 (ou une version ultérieure). Par exemple :
<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>
Mettre à jour les images Docker
Pour les applications utilisant Docker, utilisez une image de base contenant ASP.NET Core 3.1. Par exemple :
docker pull mcr.microsoft.com/dotnet/aspnet:3.1
Réagir aux modifications cookie de SameSite
Les implémentations de l’attribut SameSite
pour les cookies HTTP ont changé entre ASP.NET Core 3.0 et 3.1. Pour connaître les actions à entreprendre, consultez les ressources suivantes :
- Utiliser des cookies SameSite dans ASP.NET Core.
- aspnet/Announcements#390
- Modifications cookie de SameSite à venir dans ASP.NET et ASP.NET Core
Publier avec Visual Studio
Dans le fichier .pubxml
, mettez à jour le TargetFramework
vers 3.1 :
- <TargetFramework>netcoreapp3.0</TargetFramework>
+ <TargetFramework>netcoreapp3.1</TargetFramework>
Examiner les changements cassants
Passez en revue les changements cassants de la version 3.0 à la version 3.1 dans .NET Core, ASP.NET Core et Entity Framework Core en consultant Changements cassants pour la migration de la version 3.0 à la version 3.1.
Modifications facultatives
Les modifications suivantes sont facultatives.
Utiliser le Tag Helper du composant
ASP.NET Core 3.1 introduit un Tag Helper Component
. Le Tag Helper peut remplacer la méthode d’assistance HTML RenderComponentAsync<TComponent>
dans un projet Blazor. Par exemple :
- @(await Html.RenderComponentAsync<Counter>(RenderMode.ServerPrerendered, new { IncrementAmount = 10 }))
+ <component type="typeof(Counter)" render-mode="ServerPrerendered" param-IncrementAmount="10" />
Pour plus d’informations, consultez Prérendu et intégration des composants ASP.NET Core Razor.
Module ASP.NET Core (ANCM)
Si le module ASP.NET Core (ANCM) n'était pas un composant sélectionné lors de l'installation de Visual Studio ou si une version antérieure de l'ANCM était installée sur le système, téléchargez le dernier programme d'installation du pack .NET Core Hosting (téléchargement direct) et exécutez l'installateur. Pour plus d’informations, consultez Pack d’hébergement.