我有一个网页,必须显示在几种不同的语言根据用户的选择。为此,我对每个asp.net网页都使用了RESX文件。我不想在浏览器中使用自动检测语言,但我想再次根据用户选择来设置语言。为了实现这一点,我做了以下工作:
Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("es-MX", false);
Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("es-MX", false);或
Page.Culture = "es-MX";
Page.UICulture = "es-MX";但是这两种方法都没有达到预期的效果!我在页面的Init方法中初始化区域性,但它将始终显示默认语言。我正在检查这些属性的值,这些属性具有正确的区域性,但仍未使用RESX文件呈现。有什么想法吗?有什么建议吗?
谢谢
发布于 2012-02-12 05:01:52
试试这个新的resourceReader = System.Resources.ResourceReader System.Resources.ResourceReader("RES_PATH");
现在您可以使用它来加载用户语言,比如es.resx
System.Resources.ResourceReader resourceReader
= new System.Resources.ResourceReader(HttpContext.Current.Request.UserLanguages[0]
+ ".resource");https://stackoverflow.com/questions/9236484
复制相似问题