Identité : la version Bootstrap par défaut de l’interface utilisateur a été modifiée
À compter d’ASP.NET Core 6.0, l’interface utilisateur Identity utilise par défaut la version 5 de Bootstrap. Les versions ASP.NET Core 3.0 à 5.0 utilisaient la version 4 de Bootstrap.
Version introduite
ASP.NET Core 6.0
Comportement
AddDefaultIdentity<TUser>(IServiceCollection) appelle la méthode privée interne TryResolveUIFramework. TryResolveUIFramework
lit le UIFramework à partir de l’assembly d’application. La version de UIFramework
par défaut est la suivante :
- Bootstrap 5 pour le SDK .NET 6
- Bootstrap 4 pour le SDK .NET Core 3.1 et .NET 5
Les applications ASP.NET Core 3.1 et 5.0 créées par un modèle contiennent Bootstrap 4 dans wwwroot\lib\bootstrap. Les applications ASP.NET Core 6 créées par un modèle utilisent Bootstrap 5. Quand une application ASP.NET Core 3.1 ou 5.0 est migrée vers .NET 6, l’application détecte UIFramework
version 5, tandis que wwwroot\lib\bootstrap contient la version 4. Cette incompatibilité de version restitue les modèles d’identité de manière incorrecte.
Raison du changement
Bootstrap 5 a été publié pendant la période ASP.NET Core 6.0.
Action recommandée
Les applications impactées par ce changement utilisent l’interface utilisateur Identity par défaut et l’ont ajoutée dans Startup.ConfigureServices
comme indiqué dans le code suivant :
services.AddDefaultIdentity<IdentityUser>()
Effectuez l'une des opérations suivantes :
Ajoutez la propriété MSBuild
IdentityUIFrameworkVersion
dans le fichier projet et spécifiez Bootstrap 4 :<PropertyGroup> <TargetFramework>net6.0</TargetFramework> <IdentityUIFrameworkVersion>Bootstrap4</IdentityUIFrameworkVersion> </PropertyGroup>
Le balisage précédent définit la version de
UIFramework
sur Bootstrap 4, la même version de Bootstrap que celle utilisée dans ASP.NET Core 3.1 et 5.0.Renommez ou supprimez le dossier wwwroot\lib\bootstrap, et remplacez-le par le dossier wwwroot\lib\bootstrap d’une application ASP.NET Core 6 générée par un modèle. Les modèles d’identité fonctionnent avec ce changement, mais pour les applications utilisant Bootstrap, vous devez peut-être consulter le guide de migration Bootstrap 5.