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; } }); }
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 { } }); }