System.Reflection.Emit.MethodBuilder 클래스

이 문서에서는 이 API에 대한 참조 설명서에 대한 추가 설명서를 제공합니다.

MethodBuilder 클래스는 이름, 특성, 서명 및 메서드 본문을 포함하여 CIL(공용 중간 언어)의 메서드를 완전히 설명하는 데 사용됩니다. 클래스와 함께 TypeBuilder 런타임에 클래스를 만드는 데 사용됩니다.

리플렉션 내보내기를 사용하여 전역 메서드를 정의하고 메서드를 형식 멤버로 정의할 수 있습니다. 메서드를 정의하는 API는 개체를 반환 MethodBuilder 합니다.

전역 메서드

전역 메서드는 개체를 반환 MethodBuilder 하는 메서드를 ModuleBuilder.DefineGlobalMethod 사용하여 정의됩니다.

전역 메서드는 정적이어야 합니다. 동적 모듈에 전역 메서드 ModuleBuilder.CreateGlobalFunctions 가 포함된 경우 공용 언어 런타임이 모든 전역 함수가 정의될 때까지 동적 모듈 수정을 연기하기 때문에 동적 모듈 또는 포함된 동적 어셈블리를 유지하기 전에 메서드를 호출해야 합니다.

전역 네이티브 메서드는 메서드를 사용하여 정의됩니다 ModuleBuilder.DefinePInvokeMethod . PInvoke(플랫폼 호출) 메서드는 추상 또는 가상으로 선언해서는 안 됩니다. 런타임은 플랫폼 호출 메서드의 특성을 설정합니다 MethodAttributes.PinvokeImpl .

형식의 멤버인 메서드

메서드는 개체를 반환하는 메서드를 TypeBuilder.DefineMethod 사용하여 형식 멤버로 MethodBuilder 정의됩니다.

DefineParameter 메서드는 매개 변수의 이름 및 매개 변수 특성 또는 반환 값을 설정하는 데 사용됩니다. 이 메서드에서 반환된 개체는 ParameterBuilder 매개 변수 또는 반환 값을 나타냅니다. 개체를 ParameterBuilder 사용하여 마샬링을 설정하고, 상수 값을 설정하고, 사용자 지정 특성을 적용할 수 있습니다.

특성

열거형의 멤버는 MethodAttributes 동적 메서드의 정확한 문자를 정의합니다.

알려진 문제