Automatiser la vérification des null avec les expressions Linq
Le problème Je suis sûr qu’il vous est déjà arrivé d’écrire ce genre de code :
X x = GetX(); string name = "Default"; if (xx != null && xx.Foo != null && xx.Foo.Bar != null && xx.Foo.Bar.Baz != null) { name = xx.Foo.Bar.Baz.Name; } On veut juste obtenir name = xx.Foo.Bar.Baz.Name, mais on est obligé de tester chaque objet intermédiaire pour vérifier qu’il n’est pas nul, ce qui peut vite s’avérer pénible si la propriété voulue est profondément enfouie dans un graphe d’objets… Une solution Linq offre une fonctionnalité qui permet (entre autres) de régler ce problème : les expressions.