couramment Bonjour Je suis en train d'obtenir une réponse de validation personnalisée pour mon WebAPI à l'aide de base .NET.Utilisez les réponses de validation personnalisées avec validation
Ici, je veux avoir le modèle de réponse comme
[{
ErrorCode:
ErrorField:
ErrorMsg:
}]
J'ai une classe de validateur et actuellement, nous vérifions juste ModalState.IsValid pour la validation d'erreur et de transmettre l'objet ModelState comme BadRequest.
Mais la nouvelle exigence veut que nous ayons ErrorCodes pour chaque échec de validation.
Mon échantillon Validator classe
public class TestModelValidator : AbstractValidator<TestModel>{
public TestModelValidator {
RuleFor(x=> x.Name).NotEmpty().WithErrorCode("1001");
RuleFor(x=> x.Age).NotEmpty().WithErrorCode("1002");
}
}
Je peux utiliser quelque chose de similaire dans mes actions pour obtenir le résultat de la validation
Opt1:
var validator = new TestModelValidator();
var result = validator.Validate(inputObj);
var errorList = result.Error;
et manipuler ValidationResult à mon objet de réponse customn. ou
Opt2:
I can use [CustomizeValidator] attribute and maybe an Interceptors.
mais pour Opt2 Je ne sais pas comment récupérer ValidationResult de intercepteur à l'action du contrôleur.
Tout ce que je veux est d'écrire une méthode commune pour que j'éviter d'appeler Opt1 dans toutes les méthodes d'action du contrôleur pour la validation.
Demande de me pointer vers corriger ressources.