リフレクションを使用して継承プロパティ値を取得する方法は?私はBindingFlags
と試みるが、まだNullReferenceException
リフレクションを使用して継承プロパティの値を取得する方法は?
object val = targetObject.GetType().GetProperty("position", BindingFlags.FlattenHierarchy).GetValue(targetObject, null);
position
をトリガー は、パブリックプロパティをiheritedと宣言された値を持っています。
編集:私はいくつかのBindingFlagsとの組み合わせが、p
常に:(ヌルであるとしようとした
class myParent
{
public float[] position;
public myParent()
{
this.position = new float[] { 1, 2, 3 };
}
}
class myChild : myParent
{
public myChild() : base() { }
}
myChild obj = new myChild();
PropertyInfo p = obj.GetType().GetProperty("position", BindingFlags.Instance | BindingFlags.Public);
、あなたはBindingFlags
でオーバーロードを使用している場合は、明示的にすべてのフラグを指定する必要が
投稿できますか?継承されたプロパティを含むクラス? –
今見てください。 – abuduba
@abuduba最新の回答を見る – nemesv