0

ValidateIsLesser 属性と ValidateIsGreater 属性が表示されます。しかし、ValidateIsLesserOrEqual および/または ValidateIsGreaterOrEqual を実行したい場合はどうでしょう。これらのカスタム属性を記述するだけでよいのでしょうか?それとも、見つけるのに苦労している事前構築済みの機能がありますか?

[ValidateNonEmpty]
[ValidateDate]
[ValidateIsLesser(IsLesserValidationType.Date, "EndDate", "Start Date must be before End Date.")]
public DateTime StartDate { get; set; }

[ValidateNonEmpty]
[ValidateDate]
[ValidateIsGreater(IsGreaterValidationType.Date, "StartDate", "End Date must be after the Start Date.")]
public DateTime EndDate { get; set; }
4

1 に答える 1

2

ValidateSelf属性を使用して、OrEqual 比較に独自の検証を指定できます。

[ValidateNonEmpty]
[ValidateDate]
public DateTime StartDate { get; set; }

[ValidateNonEmpty]
[ValidateDate]
public DateTime EndDate { get; set; }

[ValidateSelf]
public void ValidateDate(ErrorSummary errors)
{
    if (StartDate >= EndDate)
        errors.RegisterErrorMessage("StartDate", "Start date must be earlier than end date.");
}
于 2010-01-03T06:49:14.620 に答える