Example #1
0
 /// <inheritdoc />
 public IValidator CreateValidator(Type modelType)
 {
     FV.IValidator validator = _factory.GetValidator(modelType);
     return(validator != null
         ? (IValidator) new FluentValidationValidator(validator)
         : NullValidator.Instance);
 }
Example #2
0
        /// <summary>
        /// Add an instantiated validator
        /// </summary>
        /// <param name="key">Type to validate</param>
        /// <param name="instance">Validator instance</param>
        /// <returns>Self</returns>
        public FluentValidationConfiguration AddValidatorInstance(Type key, FluentValidation.IValidator instance)
        {
            if (instance is null)
            {
                throw new ArgumentNullException(nameof(instance));
            }

            GetValidatorCollection(key).AddValidator(instance);

            return(this);
        }
Example #3
0
        public ValidationResult Validate(object command)
        {
            Type validatorGenericType = typeof(IValidator <>);
            Type validatorType        = validatorGenericType.MakeGenericType(command.GetType());

            IValidator validator = (IValidator)_serviceProvider.GetService(validatorType);

            if (validator == null)
            {
                return(new ValidationResult());
            }

            var validationResult = validator.Validate(command);

            return(new ValidationResult
            {
                Errors = validationResult.Errors.Select(x => new ValidationError
                {
                    ErrorCode = x.ErrorCode,
                    Message = x.ErrorMessage,
                    Property = x.PropertyName
                }).ToArray()
            });
        }
Example #4
0
 public AbstractDBCommand(IDbContextScopeFactory dbContextScopeFactory, TRepository repository, FluentValidation.IValidator validator = null)
 {
     this.DbContextScopeFactory = dbContextScopeFactory;
     this.Repository            = repository;
     this.Validator             = validator;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="FluentValidationValidator"/>.
 /// </summary>
 /// <param name="validator">The <see cref="FV.IValidator"/>.</param>
 public FluentValidationValidator(FV.IValidator validator)
 {
     Ensure.Arg.NotNull(validator, nameof(validator));
     _validator = validator;
 }
 public void AddValidator(FluentValidation.IValidator validator)
 {
     validators.Add(validator);
 }