다음을 통해 공유


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

AddDefaultIdentity<TUser>(IServiceCollection)