繁体   English   中英

ASP.NET MVC:本地化问题(文化的错误resx文件)

[英]ASP.NET MVC: Localization issues (wrong resx file for culture)

我有一个Strings.resx和一个Strings.nl.resx文件。 第一个包含英文字符串,另一个包含荷兰语字符串。 它们是C# Class Library项目的一部分: Module

 public static string testString()
 {          
      //I Force the culture to always be english
       Thread.CurrentThread.CurrentUICulture = CultureInfo.GetCultureInfo("en-US");
       Thread.CurrentThread.CurrentCulture = CultureInfo.GetCultureInfo("en-US");
       return Strings.Hello;
 }

当我从一个简单的Console Application调用它们时,它可以工作

  Console.WriteLine(Module.testString()); //English string gets returned

当我从我的ASP.NET MVC应用程序执行相同操作时,我得到荷兰语版本...

    public ActionResult testCulture()
    {
        return Content(Module.testString()); //Dutch string gets returned..?!
    }

我使用荷兰语Windows,所以任何自动设置都将是荷兰语。但是当文化被硬编码到类库中的en-us时,如何获得不同的字符串?

我在这里失踪了什么?

您是否在任何地方指定了中性资源语言? 如果将其设置为"nl""nl-NL" ,则对未找到的资源的任何请求最终将最终获取"nl"资源。 由于您没有Strings.en-US.resxStrings.en.resx ,因此将CurrentUICulture设置为"en-US"会使系统使用中性资源语言。

检查您的web.config是否没有将语言设置为荷兰语的全球化标记

要么

如果您使用的是Internet Explorer,请转到工具> Internet选项并单击语言按钮,如果它在英语之前显示荷兰语,请更改它

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM