Pergunta

Eu vejo os atributos ValidateLisIs e ValidateIsGeater. Mas e se eu quiser fazer um validelesseroreQual e/ou validateisGreaterReRoreQual. Eu só preciso escrever esses atributos personalizados ou há recursos pré-criados para isso que estou tendo dificuldade em encontrar?

[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; }
Foi útil?

Solução

Você pode usar o Valida a si mesmo Atribua e forneça sua própria validação para as comparações orceais:

[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.");
}
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top