模型数据验证,检查日期小于 X 年前的日期

model data validation, checking date is less then a date X years ago

我如何添加模型验证来检查输入的日期是否小于 X 年、X 天或之前的某个日期?

一种方法是创建一个新的自定义属性来处理这个问题 这是示例代码

 public class CheckDate: ValidationAttribute {
    public override ValidationResult IsValid(object value, ValidationContext validationContext) {
        DateTime dt = (DateTime)value;
        if (dt >= YOURDAteTime) {
            return ValidationResult.Success;
        }

        return new ValidationResult("Make sure your date is >= YOURDateTime");
    }

}

另一种方法是在客户端进行验证。这是您可以实现的 JavaScript(它还有很多其他有用的功能) 您正在寻找的方法是 Date.compare 这是一个例子:Date.compare(date1, date2);

Return Value:

{Number} -1 = date1 is lessthan date2. 0 = values are equal. 1 = date1 is greaterthan date2.