Je suis seulement au début de localiser une ASP.Net application MVC. La plupart des chaînes seront définies dans les fichiers de ressources et récupéré via Matt Localisation Aides. D'autres chaînes doivent être stockées dans une base de données.
Ma Question:
Dois-je configurer CurrentUICulture
début dans le pipeline de demande et de l'utiliser tout au long de l'application, ou utiliser directement Request.UserLanguages[0]
chaque fois que nécessaire?
Maintenant je pense que je devrais ensemble CurrentUICulture
dans Application_BeginRequest. La mise en œuvre devrait ressembler à quelque chose comme ceci:
protected void Application_BeginRequest(object sender, EventArgs e)
{
var cultureName = HttpContext.Current.Request.UserLanguages[0];
Thread.CurrentThread.CurrentUICulture = new CultureInfo(cultureName);
}
Est-ce le meilleur endroit pour mettre en CurrentUICulture
et Request.UserLanguages[0]
le meilleur endroit pour obtenir cette information?
Mise à jour:
Ariel du post m'a fait réaliser que ce qui peut être défini sans code, à l'aide de web.config
<system.web>
<!--If enableClientBasedCulture is true, ASP.NET can set the UI culture and culture for a Web page automatically, based on the values that are sent by a browser.-->
<globalization enableClientBasedCulture="true" culture="auto:en-US" uiCulture="auto:en"/>