2016-12-26 84 views
4

我有我想本地化和翻譯的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文化。可能嗎?

回答

5

當然。

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); 
+0

謝謝!當你告訴我如何,似乎很簡單。 –