我正在使用带有 MVC2 的数据注释来验证出生日期。出生日期有 3 个不同的字段。(月、日和年)(它们必须是三个单独的字段)
现在我对每个字段都有单独的数据注释。我怎样才能使所有三个字段都得到验证并在我的视图中显示一条错误消息。我现在的设置会为每个字段创建一条错误消息。
如果这些字段中的任何一个引发错误,我想显示一条通用错误消息,例如"Date of Birth invalid"
.
月份字段:
[Required]
[DisplayName("Month")]
public IEnumerable<string> Months
{
get
{
if (_Months == null)
{
List<string> months = new List<string>();
months.Add("-- Select Month --");
months.AddRange(DateTimeFormatInfo.CurrentInfo.MonthNames.Select(Month => Month).ToList());
months.RemoveAt(months.Count - 1);
_Months = months;
}
return _Months;
}
set { _Months = value; }
}
private IEnumerable<string> _Months;
public string SelectedMonth {get; set;}
日场:
[Required]
[DisplayName("Day")]
[Range(1,31, ErrorMessage = "Not a valid day")]
public int? Day { get; set; }
年份字段:
[Required]
[DisplayName("Year")]
[Range(1900,9999, ErrorMessage = "Not a valid year")]
[ValidateBirthYear]
public int? Year { get; set; }