ID: UI의 기본 부트스트랩 버전이 변경됨
ASP.NET Core 6.0부터 ID UI는 기본적으로 부트스트랩 버전 5를 사용합니다. ASP.NET Core 3.0~5.0은 부트스트랩 버전 4를 사용했습니다.
도입된 버전
ASP.NET Core 6.0
동작
AddDefaultIdentity<TUser>(IServiceCollection)은 내부 프라이빗 메서드인 TryResolveUIFramework를 호출합니다. TryResolveUIFramework
는 애플리케이션 어셈블리에서 UIFramework를 읽습니다. UIFramework
버전의 기본값은 다음과 같습니다.
- .NET 6 SDK용 부트스트랩 5
- .NET Core 3.1 및 .NET 5 SDK용 부트스트랩 4
템플릿으로 만들어진 ASP.NET Core 3.1 및 5.0 앱에는 wwwroot\lib\bootstrap에 부트스트랩 4가 포함되어 있습니다. 템플릿으로 만들어진 ASP.NET Core 6 앱은 부트스트랩 5를 사용합니다. ASP.NET Core 3.1 또는 5.0 앱이 .NET 6으로 마이그레이션되면 애플리케이션은 UIFramework
버전 5를 검색하고 wwwroot\lib\bootstrap에는 버전 4가 포함됩니다. 이 버전 불일치로 인해 ID 템플릿이 잘못 렌더링됩니다.
변경 이유
부트스트랩 5는 ASP.NET Core 6.0 시간 프레임 동안 릴리스되었습니다.
권장 작업
이 변경 내용의 영향을 받는 앱은 기본 ID UI를 사용하고 다음 코드에 표시된 대로 이를 Startup.ConfigureServices
에 추가했습니다.
services.AddDefaultIdentity<IdentityUser>()
다음 작업 중 하나를 수행합니다.
프로젝트 파일에 MSBuild 속성
IdentityUIFrameworkVersion
을 추가하고 부트스트랩 4를 지정합니다.<PropertyGroup> <TargetFramework>net6.0</TargetFramework> <IdentityUIFrameworkVersion>Bootstrap4</IdentityUIFrameworkVersion> </PropertyGroup>
이전 태그는
UIFramework
버전을 ASP.NET Core 3.1 및 5.0에서 사용된 것과 동일한 부트스트랩 버전인 부트스트랩 4로 설정합니다.wwwroot\lib\bootstrap 폴더의 이름을 바꾸거나 삭제하고 ASP.NET Core 6 템플릿 생성 앱의 wwwroot\lib\bootstrap 폴더로 바꿉니다. ID 템플릿은 이러한 변경 내용과 함께 작동하지만 부트스트랩을 사용하는 앱은 부트스트랩 5 마이그레이션 가이드를 참조해야 할 수도 있습니다.
영향을 받는 API
.NET