asp.net mvc在提交表单时是否默认执行验证?

时间:2018-03-01 16:42:16

标签: c# asp.net-mvc asp.net-core

我有一个没有评估的自定义验证,很明显。我的验证验证了日期,但是当我提交无效日期时,比如02/29/2017(无效而不是闰年),我收到一条消息,说明该字符串对于object属性无效。这不好,因为在我的国家,我们说葡萄牙语,英语信息确实妨碍了,此外,我想进行自定义验证。

    [Required(ErrorMessage = "O campo DATA DE NASCIMENTO é obrigatório")]
    [DataValida( ErrorMessage = "O campo DATA DE NASCIMENTO é inválido")]
    public DateTime DataNascimento { get; set; }

我的验证

   public class DataValida : ValidationAttribute
    {


        public override bool IsValid(object value)
        {

            DateTime dt;
            bool resultado = DateTime.TryParse(value.ToString(),out  dt);



            return resultado;
        }
    }

此消息来自何处?

enter image description here

1 个答案:

答案 0 :(得分:0)

您不需要专门针对您的语言的验证器(您指定的验证器可能无法在服务器上运行,因为它们通常设置为EN-US和UTC)。

基本(不简单)答案是您需要提供包含消息的资源

请看这个页面:http://www.codiply.com/blog/localization-and-custom-validation-in-asp-net-mvc/