1
我的类是;如何从对象类型获得泛型类型
class BaseClass
{
}
class DerivedClass1 : BaseClass
{
}
class GenericClass<T>
{
}
class DerivedClass2 : BaseClass
{
GenericClass<DerivedClass1> subItem;
}
我想访问DerivedClass2类的所有字段。 我使用System.Reflection和FieldInfo.GetValue()方法;
Bu我不能得到subItem字段。 FieldInfo.GetValue()方法的返回类型是“object”。 而我不能投到GenericClass<DerivedClass1>
或 我不能得到DerivedClass1类型。 我尝试这与BaseClass的
BaseClass instance = FieldInfo.Getvalue(this) as GenericClass<BaseClass>;
但实例为null。 如何获得类型的实例或如何获得唯一类型?
感谢您的回答。但我的问题是我不知道DerivedClass1类型。它是通用的。从DBObject派生类的所有类都可用。 – Murat 2011-03-06 16:57:26
@穆拉特:看我的编辑 - 你在找什么? – BrokenGlass 2011-03-06 17:15:50
感谢BrokenGlass, 我用不同的方式解决了它。我为GenericClass编写了一个基类,GenericClass的所有字段都在这个基类中。 所以我可以使用所有这些。 – Murat 2011-03-06 17:27:01