나는이 같은 방법 클래스를 방출 발견 방출 선언과 같은 유형의 속성 클래스를 방출 :형
class MyClass
{
String MyProperty { get; set; }
}
다음 방출하는 방법을 알아낼 수 없습니다 :
class MyClass
{
MyClass MyProperty { get; set; }
}
을
내가 직면 한 문제는 다음과 같습니다.
setter와 getter를 내보내려면 최종 컴파일/방출 유형을 나타내는 변수가 필요합니다. 이 Type을 내보내려면 먼저 setter/getter를 먼저 내 보내야합니다. 언어가 정적 컴파일에서 허용하기 때문에 가능하다고 생각합니다. 세터와 게터을 방출하기 위해
TypeBuilder.CreateType()을 (를) 사용했습니다. 계란이 닭보다 먼저 나온 타입을 반환합니다. 아무도 당신이 잘못한 것을 볼 수 없습니다. –
제목을 편집했습니다. "[제목에"태그 "가 포함되어 있어야합니까?] (http://meta.stackoverflow.com/questions/19190/)"를 참조하십시오. 여기서 합의는 "아니오, 그렇지 않아야합니다"입니다. –
MSDN 도움말 상태 TypeBuilder.CreateType()은 생성중인 형식을로드하며 정의 된 필드와 메서드가 필요합니다. "클래스의 Type 개체를 만듭니다. 클래스의 필드와 메서드를 정의한 후에 Type 개체를로드하기 위해 CreateType이 호출되었습니다." CreateType이 모든 속성과 메서드가 정의되어 호출되는지 여부에 관계없이 동일한 형식을 반환하는 경우에도 작동합니다. – Andrew