31

次のようなクラスがあるとします。

public class Test {
    public class InnerTest{}
}

TypeInfoオブジェクトができましたInnerTestTypeInfoから Testのオブジェクトを見つけるにはどうすればよいInnerTestですか?

他の方法は簡単です。単に を使用できますが、ネストされたクラスの包含クラスを把握するGetNestedTypes()ためのメソッドまたはプロパティ ( 以外) が見つかりません。IsNestedType

4

3 に答える 3

41

これは、プロパティ「DeclaringType」を取得することで取得できます。

MSDNを引用:

現在の型が入れ子になった型の場合は、外側の型を表す Type オブジェクト。または、現在の型がジェネリック型の型パラメーターである場合は、ジェネリック型定義。または、現在の型がジェネリック メソッドの型パラメーターである場合は、ジェネリック メソッドを宣言する型。それ以外の場合は null。

http://msdn.microsoft.com/en-us/library/system.type.declaringtype.aspx

于 2012-07-30T14:59:29.903 に答える
5

Type.DeclaringType物件を探しているようです。

于 2012-07-30T15:00:37.083 に答える