在appsettings.json(asp.net核心本地化)中设置文化和ui文化?

Ole*_*vik 5 localization asp.net-core-mvc asp.net-core

我有asp.net核心应用程序,我想本地化和翻译(v 1.1.0).我希望源代码支持英语和挪威语部署,我发现这可能是startup.cs配置

        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);
Run Code Online (Sandbox Code Playgroud)

但是我希望每个部署只有一种文化和一种ui文化,所以我希望找到一种方法来在appsettings.json或环境变量中设置文化和ui文化.可能吗?

Dmi*_*try 8

当然.

appsettings.json:

{
    "SiteLocale" : "en-US"
}
Run Code Online (Sandbox Code Playgroud)

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);
Run Code Online (Sandbox Code Playgroud)