Si j'ai quelque chose comme ceci:FluentValidation NullReferenceException - Comment empêcher la vérification des valeurs nulles?
When(x => x.SendMail.Equals("Y"),() =>
{
RuleFor(x => x.To).NotEmpty();
RuleFor(x => x.From).NotEmpty();
RuleFor(x => x.EmailAddress).NotEmpty();
});
et SendMail
n'a pas de valeur, je vais obtenir un NullReferenceException
. Cependant, si je l'entoure When()
comme ceci:
When(x => x.SendMail != null,() =>
{
When(x => x.SendMail.Equals("Y"),() =>
{
RuleFor(x => x.To).NotEmpty();
RuleFor(x => x.From).NotEmpty();
RuleFor(x => x.EmailAddress).NotEmpty();
});
});
cela fonctionne comme je l'attendre et je ne suis pas NRE quand SendMail
n'a pas de valeur. Je suis nouveau à FluentValidaton et C# en général. Est-ce la bonne façon de gérer les validations comme celle-ci? Dois-je envelopper toute logique comme celle-ci avec des chèques nuls?
Êtes-vous capable de faire quand (x => x.SendMail! = Null && x.SendMail.Equals ("Y"), ...); ' – Nkosi