0

我看到他们过去曾问过这个问题,只是以间接的方式没有答案,

问题是无法从父级通过子级获取参数

public class ParentModel
{
    public int statusBakashaID { get; set; }
    public ChildModel Children { get; set; }
    //.....
    //.....
}
public class ChildModel
{ 
    [myRequired(ErrorMessage = "",OtherProperty ="statusBakashaID")] 
     public string id { get; set; }
    //.....
    //.....
}

public class myRequired: ValidationAttribute
{
  public string OtherProperty { get; set; }
    protected override ValidationResult IsValid(object value, ValidationContext validationContext)
    {
           var otherProperty = validationContext.ObjectType.GetProperty(OtherProperty);
        var otherPropertyValue = 
             (int)otherProperty.GetValue(validationContext.ObjectInstance,null); 
if(otherPropertyValue == 1){
//.....
}
return null
    }
}
4

0 回答 0