public IValidator GetValidator(IObjectToValidate objectToValidate) { Guard.Against.Null(objectToValidate, nameof(objectToValidate)); var validatorName = $"{objectToValidate.GetType().Name}Validator"; var validatorType = _typeService.GetClassTypeByName(validatorName); var validatorInterfaceType = _typeService.GetInterfaceTypeFromClassByName("ObjectValidator", validatorType); var validatorService = (IValidator)_serviceProvider .GetRequiredService(validatorInterfaceType); return(validatorService); }
protected void Validate(IObjectToValidate objectToValidate) { if (objectToValidate == null) { throw new BadRequestException(); } var validator = _validatorFactoryService.GetValidator(objectToValidate); var result = validator.Validate(objectToValidate); if (result.Errors.Count > 0) { var validationErrors = GetValidationErrors(result.Errors); throw new ValidationException(validationErrors); } }
public new void Validate(IObjectToValidate objectToValidate) { base.Validate(objectToValidate); }