基底クラスの内部フィールドを設定する方法
-
20-08-2019 - |
質問
イム(DirectoryServices.AccountManagement.Principal)クラスを拡張し、私は、基本クラスのフィールドに値を代入する必要がありますが、その内部にマーク。私は、値を設定するためにリフレクションを使用することはできますか?どのようにそれが行われるのでしょうか?
私はこれを見つけます:
base.GetType().GetProperty("unpersisted").SetValue(??, false);
しかし、それをベースPrincipalオブジェクト
を与える方法イムかなり確実ではありません任意の案内がはるかに高く評価されます。
解決
タグ??のためのこののを使用
他のヒント
GetPropertyの派生クラスでこのように、すべてのパラメータを使用します:
GetType(Derived).GetProperty("BaseProperty", BindingFlags.Instance Or BindingFlags.NonPublic, Nothing, GetType(PropertyType), New Type() {}, Nothing).SetValue(DerivedInstance, NewValue, Nothing)
所属していません StackOverflow