CS8602 – Possible référence null – Comment résoudre cet avertissement? C# .Net

Vous avez déjà probablement aperçu l’avertissement CS8602, qui vous signale que votre variable peut potentiellement ne pas être instanciée, et qu’il pourrait donc y avoir une exception de type NullReferenceException. Voici un exemple où apparait cet avertissement.

Afin de supprimer l’avertissement, je pourrais utiliser le null propagation sur ma dernière ligne.

return $"{quote?.Text} - {quote?.Author.Name}";

Ce qui m’ennuie dans cette correction pour supprimer l’avertissement, c’est que j’ajoute deux tests de null sur la variable quote. De plus, lors de mon premier if, je test déjà si myServiceResponse.Quotes est différent de null et si il y a au moins une « Quote ». Etant donnée que ma réponse provient de la conversion d’un Json, je suis donc sûr que si j’ai au moins une « Quote », cette dernière ne sera pas null.

Pour éviter l’ajout des deux tests de null sur ma ligne du « return », il est possible de préciser à notre IDE (dans mon cas, Visual Studio), que cette variable ne sera jamais null. Il suffit d’ajouter un point d’exclamation après ma variable.

return $"{quote!.Text} - {quote.Author.Name}";

Grâce à ce changement, l’avertissement disparaitra, ce qui rendra votre IDE préféré et vous plus heureux 🙂

You may also like...

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *