繁体   English   中英

自定义ASP.net MVC中无效日期的错误消息

[英]Customize the Error Message for an invalid date in ASP.net MVC

我有一个日期的ASP.net MVC模型:

public class EditModel
{ 
    [Display(Name="DOB")]
    public DateTime? DateOfBirth { get; set; }
}

@Html.TextBoxFor(m => m.DateOfBirth)
@Html.ValidationMessageFor(m => m.DateOfBirth)

当用户输入无效日期(例如9/31/2011)时,错误消息将返回如下:

The value '9/31/2011' is not valid for DOB.

这是在尝试进行模型绑定时发生的,并不是我的验证之一。 有没有办法自定义此错误消息? 我希望它是这样的:

Please enter a valid date for the Date of Birth.

我不要求用户输入日期,但是当他们输入INVALID值时,我想自定义错误。

您可以使用数据注释来处理错误,或者,在这种情况下,您可以执行以下操作:

@Html.ValidationMessageFor(m => m.DateOfBirth , "Please enter a valid date for the Date of Birth.") 

尝试这个,

[DataType(DataType.Date, ErrorMessage = "Please enter a valid date.")]
public System.DateTime DateOfBirth { get; set; }

希望这个能对您有所帮助.. :)

public class myClass()
{

    [Display(Name="Date of Birth"), DataType(DataType.Date, ErrorMessage = "Please enter a valid date for the Date of Birth.")]
    public string dateOfBirth { get; set; }
}

与我在数据类型中的错误消息不工作使用常规删除它

[Display(Name="Date of Birth")]
[RegularExpression(@"^(3[01]|[12][0-9]|0[1-9])[-/](1[0-2]|0[1-9])[-/][0-9]{4}$", ErrorMessageResourceName = "DateNotValid", ErrorMessageResourceType = typeof(Resources))]
    public string dateOfBirth { get; set; }

DateNotValid:正在资源文件中使用。 如果您想要上面的格式,您可以更改为错误消息:dd-MM-YYYYY

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM