[英]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.resx
或Strings.en.resx
,因此将CurrentUICulture
设置为"en-US"
会使系统使用中性资源语言。
检查您的web.config是否没有将语言设置为荷兰语的全球化标记
要么
如果您使用的是Internet Explorer,请转到工具> Internet选项并单击语言按钮,如果它在英语之前显示荷兰语,请更改它
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.