If anyone interested in it, here is how I solved it:
public static void ValidateModel(this Controller controller, object model) { controller.ModelState.Clear(); var validationResults = ValidateModel(model); foreach (var error in validationResults.Errors) { controller.ModelState .AddModelError(error.PropertyName, error.ErrorMessage); } } public static ValidationResult ValidateModel(object model) { AttributedValidatorFactory validatorFactory = new AttributedValidatorFactory(); var validator = validatorFactory.GetValidator(model.GetType()); ValidationResult validationResults = validator.Validate(model); return validationResults; }