あなたは間違った過負荷を無効にしています。署名を使用して検証メソッドをオーバーライドする必要があります。 public virtual ValidationResult Validate(ValidationContext<T> context)
この方法は、MVC検証中に呼び出されます。
public override ValidationResult Validate(
ValidationContext<RequiredSourceViewModel> context)
{
var validator = new SourceValidator();
var source =
Mapper.Map<RequiredSourceViewModel, Source>(context.InstanceToValidate);
return validator.Validate(source);
}
他の過負荷は、次のようにVALIDATEを手動で呼び出す場合にのみ使用されます validator.Validate(object)
.