使用DataAnnotation验证DateTime

时间:2010-07-14 18:22:53

标签: c# asp.net-mvc validation datetime data-annotations

我正在开发和asp.net应用程序,我正在使用数据注释来验证我的输入模型。在这个模型中,我有一个DateTime类型的字段,我想知道当用户设置日期值无效时如何自定义消息。

我的模特中的财产:

[Required(ErrorMessage = "Informe sua data de nascimento.")]
[MinAge(Idade = 18, ErrorMessage = "Você deve possuir no mínimo 18 anos para se cadastrar neste website.")]
public virtual DateTime DataNascimento { get; set; }

我的模型正在发出如下消息:“值'45 / 64/5646'对DataNascimento无效。”

如果你能帮助我,我会感到愉快!

PS:验证器的消息是pt-br(因为它将是应用程序的语言)

非常感谢

2 个答案:

答案 0 :(得分:3)

我已经回答了类似的问题。

Check it out

在某些情况下,MVC使用自己的错误消息。这对于多语言支持来说是个问题。

答案 1 :(得分:0)

我认为你需要的是一个实际检查日期时间格式的正则表达式。 (注意:我认为这是正确的RegEx格式。

[RegularExpression(@"^([0]?[1-9]|[1|2][0-9]|[3][0|1])[./-]([0]?[1-9]|[1][0-2])[./-]([0-9]{4}|[0-9]{2})$", ErrorMessage = "The date is invalid.")]