Exemplo n.º 1
0
        public void Initialize(RepositoryExtensionFactory.ExtensionEvents events, IConfiguration config)
        {
            events.AddtoValidateEntity(e =>
            {
                if (e.Entity is IValidate)
                {
                    IValidate model = e.Entity as IValidate;
                    e.Result        = model.ValidateModel(model);
                }
                else
                {
                    AttributedValidatorFactory validatorFactory = new AttributedValidatorFactory();

                    var validator = validatorFactory.GetValidator(e.Entity.GetType());
                    ValidationResult validationResults = validator.Validate(e.Entity);

                    IList <IValidationError> errors = new List <IValidationError>();


                    foreach (var error in validationResults.Errors)
                    {
                        errors.Add(new GenericValidationError {
                            PropertyName = error.PropertyName, ValidationError = error.ErrorMessage
                        });
                    }
                    IValidationResult ErrorResult = new GenericValidationResult {
                        IsValid = validationResults.IsValid, Errors = errors
                    };
                    e.Result = ErrorResult;
                }
            });
        }
Exemplo n.º 2
0
        public IValidationResult Validate(T entity, ModelStateDictionary modelState, DbContext dbContext)
        {
            var val = new GenericValidationResult();

            val.IsValid = modelState.IsValid;

            return(val);
            // modelState.Add("bb", new ModelState { Errors = new ModelErrorCollection { } });
        }