スーパークラスで、サブクラスのタイプを除いて、現在のクラス インスタンス (「this」と同等) を取得する方法はありますか?
C.DoStuff() に提供される型は、B ではなく A のインスタンスです。クラスのプロパティでリフレクション作業を行っていますが、タイプ AI であるため、タイプ A からプロパティを取得できません。
class A
{
public void DoStuff()
{
C.DoStuff(this);
}
}
class B : A
{
}
class C
{
public static void main(string[] args)
{
A inst = new B();
inst.DoStuff();
}
public static void DoStuff<T>(T obj) {//do reflection on generic type}
}