當地語系化:移除 ResourceManagerWithCultureStringLocalizer 類別及 WithCulture 介面成員

.NET 5 已移除 ResourceManagerWithCultureStringLocalizer 類別和 WithCulture 方法。

如需內容,請參閱 aspnet/Announcements#346 dotnet/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