ASP .NET MVC4一举更改所有ValidationMessages的语言

时间:2014-02-19 18:26:38

标签: .net asp.net-mvc

我正在编写一个webapp。当我在我的电脑上运行时,它以西班牙语显示ValidationMessages,但是当我在另一台服务器上运行时,它会用英语显示它们。

Image showing the unwanted behaviour

我想要的是以西班牙语显示它们。 pc的区域配置都设置为西班牙语(阿根廷)。

当我显示...

System.Globalization.CultureInfo.InstalledUICulture.DisplayName

在每台电脑上,我说“Inglés(Estados Unidos)”,另一个说“英语(美国)”。

我可以改变这个一点。为了测试,我将其添加到Global.asax:

    protected void Application_PreRequestHandlerExecute()
    {
        System.Threading.Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("en-US"); //en-US just to test
        System.Threading.Thread.CurrentThread.CurrentUICulture = CultureInfo.CreateSpecificCulture("en-US"); //en-US just to test
    }

这在我的电脑中影响了前面提到的文化展示。它说“英语(美国)”和消息以英文显示。

但是,当我在服务器上测试它时

    protected void Application_PreRequestHandlerExecute()
    {
        System.Threading.Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("es-AR");
        System.Threading.Thread.CurrentThread.CurrentUICulture = CultureInfo.CreateSpecificCulture("es-AR");
    }

消息没有改变,ValidationMessages继续以英文显示。

我甚至在服务器中安装了.NET语言包,但没有运气。我该怎么做才能改变这种行为?

修改

忘了说,webconfig已经有了:

<configuration>
    <system.web>
        <globalization uiCulture="es-AR" culture="es-AR" />
    </system.web>
</configuration>

0 个答案:

没有答案