【问题标题】:Validation with DataAnnotations in Azure shows wrong Text在 Azure 中使用 DataAnnotations 进行验证显示错误的文本
【发布时间】:2013-04-30 18:42:11
【问题描述】:

我们在 MVC4 中创建了一个 Windows azure 网站,我们使用数据注释来设置显示名称并验证输入字段。这是一个多语言页面,因此我们取消了要翻译的资源文件。

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

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

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

提前致谢!

感谢

编辑: 文化由过滤器属性设置,如下所示:

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

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

编辑 2013-05-02:

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

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

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

【问题讨论】:

  • 你能贴出你用来设置文化的代码吗?

标签: asp.net-mvc azure resources translation data-annotations


【解决方案1】:

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

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

【讨论】:

    猜你喜欢
    • 2010-12-17
    • 1970-01-01
    • 2021-11-18
    • 2015-11-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多