2013-04-30 68 views
1

我们在MVC4中创建了Windows Azure网站,并且我们使用dataannotation来设置显示名称并验证输入字段。这是一个多语言页面,因此我们正在解压缩资源文件。使用Azure中的DataAnnotations进行验证显示错误文本

[Display(ResourceType = typeof(GlobalResource), Name = "LitZip")] 
[Required(ErrorMessageResourceType = typeof(GlobalResource), ErrorMessageResourceName = "ErrRequiredZip")] 
public string ZIP { get; set; } 

本地所有的作品都很完美。上传在Windows Azure上也显示得很好,但验证后的错误未被翻译。当我返回CurrentCulture时,它已正确设置为德语。我们使用自定义工具“PublicResXFileCodeGenerator”生成资源文件。

希望有人可以帮助我们解决这个问题。

在此先感谢!

样reagrds

编辑:

var culture = new CultureInfo("de-de"); 

     Thread.CurrentThread.CurrentCulture = culture; 
     Thread.CurrentThread.CurrentUICulture = culture; 

编辑2013年5月2日: 文化由filterattribute设置如下

我目前设置文化在ActionFilterAttribute。当我在web.config文件中设置文件时,它一切正常。

<globalization culture="de-DE" uiCulture="de-DE" /> 

不过,我需要能够在用户的运行时间更改个人文化。也许ActionFilterAttribute在这里是错误的位置?我需要访问cookie数据。

+0

您可以发布您用于设置文化的代码吗? – mattytommo 2013-04-30 21:15:10

回答

0

将此行添加到Web.Config文件。

<globalization uiCulture="auto:ru-RU" culture="auto:ru-RU" requestEncoding="utf-8" responseEncoding="utf-8"/> 
相关问题