在我的 asp.net 应用程序中,我想让用户更改他的个人资料语言,然后加载相应的 resx 文件。
我有两个全局 .resx 文件:
LocalizedText.resx
LocalizedText.pl.resx
protected void Page_Load(object sender, EventArgs e)
{
...
if (!IsPostBack)
{
setUserSettings(...)
}
}
和
private void setUserSettings(...)
{
...
Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("pl");
}
setUserSettings(...)
当用户更改他的个人资料设置时也会使用。
问题是它总是回退到LocalizedText.resx
文件而不是加载LocalizedText.pl.resx
我对其进行了调试,并且 CurrentUICulture 在 Page_Load 的开头始终是“en_US”。
我也尝试设置 UICulture 和 Culture 属性,但没有成功。
当我使用 Page.Culture="auto" 时,它会在我将浏览器语言设置为“pl”时加载 .pl.resx 文件,但这不是我想要的。
有任何想法吗?谢谢