下面是ValidationAttribute,它验证两个字段中的信息。它有效,但总是发帖。在客户端不起作用。
我应该在客户端切换到ValidationAttribute工作?
[AttributeUsageAttribute(AttributeTargets.Property | AttributeTargets.Field | AttributeTargets.Parameter, AllowMultiple = false)]
public class SexoComTipoPessoa : ValidationAttribute
{
protected override ValidationResult IsValid(object value, ValidationContext validationContext)
{
var property = validationContext.ObjectInstance.GetType().GetProperty("TipoPessoaID");
if (property == null)
return new ValidationResult("Propriedade desconhecida: 'TipoPessoaID'");
var propertyValue = property.GetValue(validationContext.ObjectInstance, null);
/* Tipo de pessoa 2 - é pessoa juridicia */
if (Convert.ToInt32(propertyValue) == 2)
{
if (Convert.ToInt32(value) != 3)
return new ValidationResult("Para o tipo de pessoa 'Juridíca', deve ser selecionado o sexo 'Não aplicavél'!");
}
else if (Convert.ToInt32(propertyValue) == 1)
{
if (Convert.ToInt32(value) == 3)
return new ValidationResult("Para o tipo de pessoa 'Física', deve ser selecionado o sexo 'Masculino' ou 'Feminino'!");
}
return ValidationResult.Success;
}
}
答案 0 :(得分:0)