我已经完成了一些ressearch,并且执行此操作的唯一方法似乎是覆盖Web应用程序的每个页面中的InitializeCulture方法。事情是,我的应用程序有80页,所以我想知道是否有另一种方法来做到这一点会更容易。更改您的Web应用程序的语言c#
protected override void InitializeCulture()
{
if (Session["CultureLang"] != null)
{
string selectedLanguage = Session["CultureLang"].ToString();
if (selectedLanguage == "True")
selectedLanguage = "en-US";
Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture(selectedLanguage);
Thread.CurrentThread.CurrentUICulture = new CultureInfo(selectedLanguage);
}
base.InitializeCulture();
}
我有这样的web.config文件:
<globalization culture="auto" uiCulture="auto" requestEncoding="UTF-8" responseEncoding="UTF-8" fileEncoding="UTF-8"/>
注:我的按钮来改变语言是一个自定义的夏精,如果改变任何东西。
您使用该框架? – bas 2013-02-08 20:44:35
为什么不直接在global.asax中的Application_AcquireRequestState中设置文化? – aquinas 2013-02-09 01:07:09