다음을 통해 공유


지역화: ResourceManagerWithCultureStringLocalizer 클래스 및 WithCulture 인터페이스 멤버가 제거됨

Microsoft.Extensions.Localization.ResourceManagerWithCultureStringLocalizer 클래스와 Microsoft.Extensions.Localization.ResourceManagerStringLocalizer.WithCulture 메서드가 .NET 5에서 제거되었습니다.

컨텍스트는 aspnet/Announcements#346dotnet/aspnetcore#3324를 참조하세요. 이 문제에 관한 자세한 내용은 dotnet/aspnetcore#7756을 참조하세요.

도입된 버전

5.0

이전 동작

ResourceManagerWithCultureStringLocalizer 클래스 및 ResourceManagerStringLocalizer.WithCulture 메서드는 .NET Core 3.0 이상에서 사용되지 않습니다.

새 동작

ResourceManagerWithCultureStringLocalizer 클래스 및 ResourceManagerStringLocalizer.WithCulture 메서드는 .NET 5에서 제거되었습니다. 변경된 내용의 인벤토리는 dotnet/extensions#2562에서 끌어오기 요청을 참조하세요.

변경 이유

ResourceManagerWithCultureStringLocalizer 클래스와 ResourceManagerStringLocalizer.WithCulture 메서드는 종종 지역화 사용자에게 혼동의 원인이었습니다. 특히 사용자 지정 IStringLocalizer 구현을 만들 때 크게 혼란스러워했습니다. 이 클래스와 메서드는 소비자가 IStringLocalizer 인스턴스가 “언어별, 리소스별”이어야 한다는 인상을 줍니다. 실제로 인스턴스는 “리소스별”이어야 합니다. 런타임에 CultureInfo.CurrentUICulture 속성은 사용할 언어를 결정합니다.

ResourceManagerWithCultureStringLocalizer 클래스 및 ResourceManagerStringLocalizer.WithCulture 메서드 사용을 중지합니다.

영향을 받는 API

  • Microsoft.Extensions.Localization.ResourceManagerWithCultureStringLocalizer
  • Microsoft.Extensions.Localization.ResourceManagerStringLocalizer.WithCulture