创建接受参数“今天”的日期范围验证器

本文关键字:日期 范围 验证 今天 参数 创建 | 更新日期: 2023-09-27 18:01:21

我已经创建了一个日期范围属性,看起来像这样:

[DateRange(Min = "Today")]

在这个属性中,我得到这样的最小日期:

...
var minDate = DateTime.Now;
...

EDIT:这里是更多的代码:

private DateTime _minDate = DateTime.Today.AddYears(-100);
private DateTime _maxDate = DateTime.MaxValue;
// String representation of the Min Date (yyyy/MM/dd)
public string Min
{
    get { return FormatDate(_minDate, DateTime.Today.AddYears(-100)); }
    set { _minDate = value == "Today" ? DateTime.Today : ParseDate(value, DateTime.Today.AddYears(-100)); }
}
// String representation of the Max Date (yyyy/MM/dd)
public string Max
{
    get { return FormatDate(_maxDate, DateTime.MaxValue); }
    set { _maxDate = value == "Today" ? DateTime.Today : ParseDate(value, DateTime.MaxValue); }
}

由于属性的性质,编译时只设置minDate一次。你能告诉我实现这个功能的另一种方法吗?

创建接受参数“今天”的日期范围验证器

使用CustomValidator。

仔细想想,如果将内容(minDate)标记为volatile会怎么样?请做并报告它是否有效。如果它工作,我有一些更新自己。