Bagikan melalui


Kelas System.Reflection.Emit.MethodBuilder

Artikel ini menyediakan keterangan tambahan untuk dokumentasi referensi untuk API ini.

Kelas MethodBuilder ini digunakan untuk sepenuhnya menggambarkan metode dalam bahasa perantara umum (CIL), termasuk nama, atribut, tanda tangan, dan isi metode. Ini digunakan bersama dengan TypeBuilder kelas untuk membuat kelas pada waktu proses.

Anda dapat menggunakan pancaran pantulan untuk menentukan metode global dan menentukan metode sebagai anggota jenis. API yang menentukan metode mengembalikan MethodBuilder objek.

Metode global

Metode global didefinisikan dengan menggunakan ModuleBuilder.DefineGlobalMethod metode , yang mengembalikan MethodBuilder objek.

Metode global harus statis. Jika modul dinamis berisi metode global, ModuleBuilder.CreateGlobalFunctions metode harus dipanggil sebelum mempertahankan modul dinamis atau rakitan dinamis yang berisi karena runtime bahasa umum menunda perbaikan modul dinamis sampai semua fungsi global telah ditentukan.

Metode asli global didefinisikan dengan menggunakan ModuleBuilder.DefinePInvokeMethod metode . Metode pemanggilan platform (PInvoke) tidak boleh dinyatakan abstrak atau virtual. Runtime mengatur MethodAttributes.PinvokeImpl atribut untuk metode pemanggilan platform.

Metode sebagai anggota jenis

Metode didefinisikan sebagai anggota jenis dengan menggunakan TypeBuilder.DefineMethod metode , yang mengembalikan MethodBuilder objek.

Metode DefineParameter ini digunakan untuk mengatur atribut nama dan parameter parameter, atau nilai yang dikembalikan. Objek ParameterBuilder yang dikembalikan oleh metode ini mewakili parameter atau nilai yang dikembalikan. Objek ParameterBuilder dapat digunakan untuk mengatur marshaling, untuk mengatur nilai konstanta, dan untuk menerapkan atribut kustom.

Atribut

Anggota MethodAttributes enumerasi menentukan karakter yang tepat dari metode dinamis:

Masalah umum