在appsettings.json(asp.net核心本地化)中设置文化和ui文化?
问题描述:
我有我想本地化和翻译的asp.net核心应用程序(v 1.1.0)。我想的源代码,同时支持英语和挪威语部署,我发现这可能是一个startup.cs配置在appsettings.json(asp.net核心本地化)中设置文化和ui文化?
RequestLocalizationOptions localizationOptions = new RequestLocalizationOptions
{
SupportedCultures = new List<CultureInfo> { new CultureInfo("en-US"), new CultureInfo("nb-NO") },
SupportedUICultures = new List<CultureInfo> { new CultureInfo("en-US"), new CultureInfo("nb-NO") },
DefaultRequestCulture = new RequestCulture("nb-NO")
};
app.UseRequestLocalization(localizationOptions);
但是我想为每个部署只有一个文化,一个UI的文化,所以我希望找到一种方法来设置appsettings.json或环境变量中的文化和ui文化。可能吗?
答
当然。
appsettings.json
:
{
"SiteLocale" : "en-US"
}
Startup.cs
:
var locale = Configuration["SiteLocale"];
RequestLocalizationOptions localizationOptions = new RequestLocalizationOptions
{
SupportedCultures = new List<CultureInfo> { new CultureInfo(locale) },
SupportedUICultures = new List<CultureInfo> { new CultureInfo(locale) },
DefaultRequestCulture = new RequestCulture(locale)
};
app.UseRequestLocalization(localizationOptions);
谢谢!当你告诉我如何,似乎很简单。 –