1
我有一个通用的抽象基类,我想从中通过reflection.emit构建的动态类型派生它。另外我需要自定义派生类的默认构造函数来初始化一些字段。要正确构建派生类的默认构造函数,我需要获取基类的默认构造函数并调用它。问题是我无法从基类获取默认构造函数。获取通用抽象类的默认构造函数
一个例子:
public abstract class Test<T>
{
private T data;
public abstract void Go();
}
public class TestDerive : Test<int>
{
public override void Go()
{
}
}
class Program
{
static void Main(string[] args)
{
ConstructorInfo[] constructors = typeof(Test<>).GetConstructors();
int length = constructors.Length;
}
}
我用尽了一切和长度始终为零。我不明白。我已经在反射器中检查了类似的情况,并且确实有一个对抽象类的基础构造函数的调用。问题是我怎样才能做到这一点?
非常感谢。而已 – 2010-08-20 07:46:58