始终从资源文件返回具有默认语言的字符串

时间:2012-07-26 10:49:46

标签: c# .net cultureinfo

我有两个资源文件,Emails.es.resx(es-ES)和Emails.eu.resx(eu-ES),我在使用{{1}从eu-ES文件中检索字符串时遇到问题}

在本地,这可以正常工作,但在服务器上,是一个Web应用程序+ IIS,不起作用,总是返回正确的“textKey”值,但使用默认语言es-ES。

我清理了解决方案并重建了所有内容,但没有结果。

有谁知道会发生什么?

2 个答案:

答案 0 :(得分:0)

确保设置正确的文化。假设您在网站默认页面的某处提供了选项,用户可以在其中选择语言。在语言更改中将所选语言保存在应用程序状态的某个位置..会话或捕获或任何套件。将文化设置如下 explained at following link:

  protected void Page_PreInit(object sender, System.EventArgs e) {

    System.Globalization.CultureInfo lang = null;
    lang = new System.Globalization.CultureInfo("zh-CN");

    System.Threading.Thread.CurrentThread.CurrentCulture = lang;
    System.Threading.Thread.CurrentThread.CurrentUICulture = lang;

}

现在检索你的资源..它应该返回正确的资源。

答案 1 :(得分:0)

将文件重命名为Emails.es-ES.resxEmails.eu-ES.resx