This error is shown if you have the same validation on the same element more than once.
Not setting AddImplicitRequiredAttributeForValueTypes = false
for both the default DataAnnontations and your FluentValidation will add a Required validation on any ValueTypes (like an int
). If you at the same time add a RuleFor (or a [Required]
attribute) on any ValueType you will have an extra Required for that field.
For that reason (I want to set all validations explicitly) I have the following in my Application_Start()
:
var fluentValidationModelValidatorProvider = new FluentValidationModelValidatorProvider(new AttributedValidatorFactory());
ModelValidatorProviders.Providers.Add(fluentValidationModelValidatorProvider);
DataAnnotationsModelValidatorProvider.AddImplicitRequiredAttributeForValueTypes = false;
fluentValidationModelValidatorProvider.AddImplicitRequiredValidator = false;
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…