在我的ASP.NET Core 3.1网站上,我正在尝试为不同支持的语言生成替代链接,这些链接存储在资源中。我在我的类中使用IStringLocalizer<>作为依赖项来获取翻译。以前有一个扩展方法.WithCulture()允许字符串本地化器在不同的文化中查找。然而,这已经被标记为过时(并在.NET 5中被移除)。
最佳的方法是什么,可以从多个可用文化中加载单个键? 我目前正在使用以下方式来“破解”它。
最佳的方法是什么,可以从多个可用文化中加载单个键? 我目前正在使用以下方式来“破解”它。
var originalCulture = Thread.CurrentThread.CurrentUICulture;
Thread.CurrentThread.CurrentUICulture = CultureInfo.CreateSpecificCulture(cultureCode);
var localized = localizer[myKey];
Thread.CurrentThread.CurrentUICulture = originalCulture;
对于每种支持的语言,然而这个方法在我看来并不太正确。
有更好的方法吗?
此外,我认为存在某种竞争条件,因为我遇到了一些文本随机地以错误的语言呈现 - 因为我正在更改一些全局状态...