Localizzazione: classe ResourceManagerWithCultureStringLocalizer e membro dell'interfaccia WithCulture rimossi
La classe Microsoft.Extensions.Localization.ResourceManagerWithCultureStringLocalizer
e il metodo Microsoft.Extensions.Localization.ResourceManagerStringLocalizer.WithCulture
sono stati rimossi in .NET 5.
Per conoscere il contesto, vedi aspnet/Announcements#346 e dotnet/aspnetcore#3324. Per informazioni su questa modifica, vedi dotnet/aspnetcore#7756.
Versione introdotta
5.0
Comportamento precedente
La classe ResourceManagerWithCultureStringLocalizer
e il metodo ResourceManagerStringLocalizer.WithCulture
sono obsoleti in .NET Core 3.0 e versioni successive.
Nuovo comportamento
La classe ResourceManagerWithCultureStringLocalizer
e il metodo ResourceManagerStringLocalizer.WithCulture
sono stati rimossi in .NET 5. Per un inventario delle modifiche apportate, vedi la richiesta pull in dotnet/extensions#2562.
Motivo della modifica
La classe ResourceManagerWithCultureStringLocalizer
e il metodo ResourceManagerStringLocalizer.WithCulture
erano spesso fonte di confusione per gli utenti della localizzazione. La confusione era particolarmente elevata quando si creava un'implementazione personalizzata IStringLocalizer. Questa classe e questo metodo danno agli utenti l'impressione che un'istanza IStringLocalizer
sia "per lingua, per risorsa". In realtà, l'istanza deve essere solo "per risorsa". In fase di esecuzione, la proprietà CultureInfo.CurrentUICulture determina la lingua da usare.
Azione consigliata
Interrompere l'uso della classe ResourceManagerWithCultureStringLocalizer
e del metodo ResourceManagerStringLocalizer.WithCulture
.
API interessate
Microsoft.Extensions.Localization.ResourceManagerWithCultureStringLocalizer
Microsoft.Extensions.Localization.ResourceManagerStringLocalizer.WithCulture