ID: UI の既定の Bootstrap のバージョンが変更された
ASP.NET Core 6.0 以降、ID UI では既定でバージョン 5 の Bootstrap が使用されています。 ASP.NET Core 3.0 から 5.0 では、バージョン 4 の Bootstrap が使用されていました。
導入されたバージョン
ASP.NET Core 6.0
動作
AddDefaultIdentity<TUser>(IServiceCollection) によって、内部プライベート メソッド TryResolveUIFramework が使用されます。 TryResolveUIFramework
によって、アプリケーション アセンブリから UIFramework が読み取られます。 UIFramework
のバージョンの既定値は次のとおりです。
- .NET 6 SDK の Bootstrap 5
- .NET Core 3.1 および .NET 5 SDK の Bootstrap 4
テンプレートで作成された ASP.NET Core 3.1 および 5.0 アプリの場合は、wwwroot\lib\bootstrap に Bootstrap 4 が含まれています。 テンプレートで作成された ASP.NET Core 6 アプリでは Bootstrap 5 が使用されます。 ASP.NET Core 3.1 または 5.0 アプリを .NET 6 に移行すると、アプリケーションによって検出されるのは UIFramework
バージョン 5 ですが、wwwroot\lib\bootstrap にはバージョン 4 が含まれています。 このバージョンの不一致によって、ID テンプレートが正しくレンダリングされません。
変更理由
Bootstrap 5 は ASP.NET Core 6.0 の期間中にリリースされました。
推奨される操作
この変更の影響を受けるアプリでは、既定の ID UI が使用されます。次のコードに示すように、Startup.ConfigureServices
に追加されています。
services.AddDefaultIdentity<IdentityUser>()
次のいずれかのアクションを実行します。
プロジェクト ファイルに MSBuild プロパティ
IdentityUIFrameworkVersion
を追加し、Bootstrap 4 を指定します。<PropertyGroup> <TargetFramework>net6.0</TargetFramework> <IdentityUIFrameworkVersion>Bootstrap4</IdentityUIFrameworkVersion> </PropertyGroup>
上記のマークアップにより、
UIFramework
バージョンが Bootstrap 4 (ASP.NET Core 3.1 および 5.0 で使用されているのと同じ Bootstrap バージョン) に設定されます。wwwroot\lib\bootstrap フォルダーの名前変更または削除を行い、それを、ASP.NET Core 6 テンプレートで生成されたアプリの wwwroot\lib\bootstrap フォルダーに置き換えます。 この変更で ID テンプレートは機能するようになります。Bootstrap を使用するアプリについては、Bootstrap 5 移行ガイドを参照することが必要な場合があります。
影響を受ける API
.NET