Say, par exemple, j'ai cette classe simple:Get PropertyInfo de propriété au lieu du nom
public class MyClass
{
public String MyProperty { get; set; }
}
La façon d'obtenir le PropertyInfo pour MyProperty serait:
typeof(MyClass).GetProperty("MyProperty");
Cette suce!
Pourquoi? Facile: il se casse dès que je change le nom de la propriété, il a besoin de beaucoup de tests dédiés pour trouver chaque endroit où une propriété est utilisée ainsi, les arbres de refactoring et d'utilisation sont incapables de trouver ce type d'accès.
N'y a-t-il aucun moyen d'accéder correctement à une propriété? Quelque chose, qui est validé lors de la compilation?
J'aimerais une commande comme ceci:
propertyof(MyClass.MyProperty);
Ça empire. Si vous observez WPF, vous remarquerez qu'il nécessite des noms de propriété de chaîne pour la liaison de données et également lors de l'implémentation de INotifyPropertyChanged. Ce n'est pas maintenant un cas de coin pour les utilisateurs de Reflection, mais le cas général d'utilisation quotidienne. Je compte actuellement sur Resharper pour que les choses restent synchronisées. –
Unitesting m'a aidé beaucoup ici, mais c'est à ce sujet ... – Enriquev
Question connexe de débordement de pile avec des réponses plus détaillées: http://stackoverflow.com/questions/491429/how-to-get-the-propertyinfo-of-a- specific-property –