Question

Je suis en train d’étendre une classe (DirectoryServices.AccountManagement.Principal) et je dois attribuer une valeur à un champ de la classe de base, mais il est marqué comme interne. Puis-je utiliser la réflexion pour définir la valeur? Comment cela serait-il fait?

J'ai trouvé ceci:

base.GetType().GetProperty("unpersisted").SetValue(??, false);

Mais je ne sais pas trop comment lui donner l'objet principal de base

Toute orientation est très appréciée.

Était-ce utile?

La solution

utilisez this pour ??

Autres conseils

GetProperty sur la classe dérivée et utilisez tous les paramètres comme ceci:

GetType(Derived).GetProperty("BaseProperty", BindingFlags.Instance Or BindingFlags.NonPublic, Nothing, GetType(PropertyType), New Type() {}, Nothing).SetValue(DerivedInstance, NewValue, Nothing)
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top