avril
2007
Après presque une semaine d’absence pour des raisons personnelles, je suis de retour.
Quand on utilise la Reflection et qu’on renomme un membre de la classe, on s’expose à un problème. Depuis VS 2005, toutes les références vers ce membre sont mises à jour sauf si vous passez par la reflection. Du coup, vous aurez une erreur à l’exécution. On aurait préféré l’avoir à la compilation mais comment le compilateur pourrait-il trouver cette erreur ? Je viens de lire un excellent article qui explique comment utiliser C# 3.0 pour faire en sorte que l’erreur se produise dès la compilation.
Cependant, cette façon de faire est moins puissante que la reflection. En effet, on ne peut accéder qu’aux propriétés publiques (ou internal ou protected suivant les cas) alors que la reflection permet d’atteindre toutes les propriétés (y compris private)