如何在运行时构建类型的方法中引用包含类型?

时间:2009-09-21 16:54:23

标签: c# .net

我想在运行时构建的类型中包含一个Copy方法,它将自己的类型作为参数 - 我确定我错过了一些明显但我不知道该怎么做的

TypeBuilder recordTypeBuilder = 
     moduleBuilder.DefineType("_" + tableSpec.Name + "Record", TypeAttributes.Sealed,);

recordTypeBuilder.DefineMethod( "CopyFrom", MethodAttributes.Public, null, new[] { typeof( ??? ) });
这是我遇到问题的地方。我还没有构建类型,因为我还没有完成它的创建!

任何想法?

的问候,

1 个答案:

答案 0 :(得分:1)

TypeBuilder继承自System.Type,可在实际创建之前用于Reflection.Emit定义:

recordTypeBuilder.DefineMethod(
    "CopyFrom", MethodAttributes.Public, null, new Type[] { recordTypeBuilder });