发出具有与声明发出类型相同类型的属性的类

And*_*rew 3 c# reflection.emit

我已经找到了如何发出类,如下所示:

class MyClass
{
    String MyProperty { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

无法弄清楚如何发出以下内容:

class MyClass
{
    MyClass MyProperty { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我遇到的问题是:

为了发出setter和getter,我需要一个表示最终编译/发出的Type的变量.为了发出这个Type,我需要先发出setter/getter.我想这是可能的,因为语言允许在静态编译中.

Tho*_*que 10

为了发出setter和getter,我需要一个表示最终编译/发出的Type的变量

其实,你不这样做:你只需要通过TypeBuilder为属性的类型(TypeBuilder继承Type,所以它的有效参数returnType的参数DefineProperty)