質問

私は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; }
役に立ちましたか?

解決

あなたはを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.");
}
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top