2

インスタンスの親タイプを取得しようとしています。どのようにできるのか ?

例 :

public class a
{
     public b { get; set; }
}

public class b
{

}


var a = new a();
a.b = new b();

var parentType = a.b.??GetParentInstanceType()??
4

1 に答える 1

6

できません。

親を追跡するには、手動で子にプロパティを追加する必要があります。

1 つの方法を次に示します。

public class A
{
    public B<A> Child { get; set; }
}

public class B<T>
{
    public T Parent { get; set; }
}

A a = new A();
a.Child = new B<A>();
a.Child.Parent = a;

Type parentType = a.Child.Parent.GetType();

もちろん、ここでの問題は、設定を忘れたりParent間違って設定したりするのを止めるものは何もないということParentです。

于 2012-10-25T15:39:49.203 に答える