Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
To better maintain the public API surface of ASP.NET Core, some "pubternal" localization APIs were removed. A "pubternal" API has a public
access modifier and is defined in a namespace that implies an internal intent.
For discussion, see dotnet/aspnetcore#22291.
Version introduced
5.0 Preview 6
Old behavior
The following APIs were public
:
Microsoft.Extensions.Localization.Internal.AssemblyWrapper
Microsoft.Extensions.Localization.Internal.IResourceStringProvider
Microsoft.Extensions.Localization.ResourceManagerStringLocalizer
constructor overloads accepting either of the following parameter types:AssemblyWrapper
IResourceStringProvider
New behavior
The following list outlines the changes:
Microsoft.Extensions.Localization.Internal.AssemblyWrapper
becameMicrosoft.Extensions.Localization.AssemblyWrapper
and is nowinternal
.Microsoft.Extensions.Localization.Internal.IResourceStringProvider
becameMicrosoft.Extensions.Localization.Internal.IResourceStringProvider
and is nowinternal
.Microsoft.Extensions.Localization.ResourceManagerStringLocalizer
constructor overloads accepting either of the following parameter types are nowinternal
:AssemblyWrapper
IResourceStringProvider
Reason for change
Explained more thoroughly at aspnet/Announcements#377, "pubternal" types were removed from the public
API surface. These changes adapt more classes to that design decision. The classes in question were intended as extension points for the team's internal testing.
Recommended action
Although it's unlikely, some apps may intentionally or accidentally depend upon the "pubternal" types. See the New behavior sections to determine how to migrate away from the types.
If you've identified a scenario which the public API allowed before this change but doesn't now, file an issue at dotnet/aspnetcore.
Affected APIs
Microsoft.Extensions.Localization.Internal.AssemblyWrapper
Microsoft.Extensions.Localization.Internal.IResourceStringProvider
- ResourceManagerStringLocalizer.ResourceManagerStringLocalizer