Bagikan melalui


Type.GetMethodImpl Metode

Definisi

Overload

GetMethodImpl(String, Int32, BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[])

Saat ditimpa dalam kelas turunan, cari metode yang ditentukan yang parameternya cocok dengan jumlah parameter generik, jenis argumen, dan pengubah yang ditentukan, menggunakan batasan pengikatan yang ditentukan dan konvensi panggilan yang ditentukan.

GetMethodImpl(String, BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[])

Saat ditimpa dalam kelas turunan, cari metode yang ditentukan yang parameternya cocok dengan jenis argumen dan pengubah yang ditentukan, menggunakan batasan pengikatan yang ditentukan dan konvensi panggilan yang ditentukan.

GetMethodImpl(String, Int32, BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[])

Sumber:
Type.cs
Sumber:
Type.cs
Sumber:
Type.cs

Saat ditimpa dalam kelas turunan, cari metode yang ditentukan yang parameternya cocok dengan jumlah parameter generik, jenis argumen, dan pengubah yang ditentukan, menggunakan batasan pengikatan yang ditentukan dan konvensi panggilan yang ditentukan.

protected:
 virtual System::Reflection::MethodInfo ^ GetMethodImpl(System::String ^ name, int genericParameterCount, System::Reflection::BindingFlags bindingAttr, System::Reflection::Binder ^ binder, System::Reflection::CallingConventions callConvention, cli::array <Type ^> ^ types, cli::array <System::Reflection::ParameterModifier> ^ modifiers);
protected virtual System.Reflection.MethodInfo? GetMethodImpl (string name, int genericParameterCount, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder? binder, System.Reflection.CallingConventions callConvention, Type[]? types, System.Reflection.ParameterModifier[]? modifiers);
protected virtual System.Reflection.MethodInfo GetMethodImpl (string name, int genericParameterCount, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder binder, System.Reflection.CallingConventions callConvention, Type[] types, System.Reflection.ParameterModifier[] modifiers);
abstract member GetMethodImpl : string * int * System.Reflection.BindingFlags * System.Reflection.Binder * System.Reflection.CallingConventions * Type[] * System.Reflection.ParameterModifier[] -> System.Reflection.MethodInfo
override this.GetMethodImpl : string * int * System.Reflection.BindingFlags * System.Reflection.Binder * System.Reflection.CallingConventions * Type[] * System.Reflection.ParameterModifier[] -> System.Reflection.MethodInfo
Protected Overridable Function GetMethodImpl (name As String, genericParameterCount As Integer, bindingAttr As BindingFlags, binder As Binder, callConvention As CallingConventions, types As Type(), modifiers As ParameterModifier()) As MethodInfo

Parameter

name
String

String yang berisi nama metode yang akan didapatkan.

genericParameterCount
Int32

Jumlah parameter jenis generik metode .

bindingAttr
BindingFlags

Kombinasi bitwise dari nilai enumerasi yang menentukan bagaimana pencarian dilakukan.

-atau-

Default untuk mengembalikan null.

binder
Binder

Objek yang mendefinisikan sekumpulan properti dan memungkinkan pengikatan, yang dapat melibatkan pemilihan metode yang kelebihan beban, paksaan jenis argumen, dan pemanggilan anggota melalui refleksi.

-atau-

Referensi null (Nothing di Visual Basic), untuk menggunakan DefaultBinder.

callConvention
CallingConventions

Objek yang menentukan sekumpulan aturan yang akan digunakan mengenai urutan dan tata letak argumen, bagaimana nilai pengembalian diteruskan, register apa yang digunakan untuk argumen, dan proses apa yang membersihkan tumpukan.

types
Type[]

Array Type objek yang mewakili angka, urutan, dan jenis parameter untuk metode yang akan didapatkan.

-atau-

Array kosong dari jenis Type (yaitu, Jenis[] = Tipe baru[0]) untuk mendapatkan metode yang tidak mengambil parameter.

-atau-

null. Jika types adalah null, argumen tidak cocok.

modifiers
ParameterModifier[]

Array ParameterModifier objek yang mewakili atribut yang terkait dengan elemen yang sesuai dalam types array. Pengikat default tidak memproses parameter ini.

Mengembalikan

Objek yang mewakili metode yang cocok dengan jumlah parameter generik yang ditentukan, jenis argumen, pengubah, batasan pengikatan, dan konvensi panggilan, jika ditemukan; jika tidak, null.

Pengecualian

Metode ini perlu ditimpa dan dipanggil dalam kelas turunan.

Berlaku untuk

GetMethodImpl(String, BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[])

Sumber:
Type.cs
Sumber:
Type.cs
Sumber:
Type.cs

Saat ditimpa dalam kelas turunan, cari metode yang ditentukan yang parameternya cocok dengan jenis argumen dan pengubah yang ditentukan, menggunakan batasan pengikatan yang ditentukan dan konvensi panggilan yang ditentukan.

protected:
 abstract System::Reflection::MethodInfo ^ GetMethodImpl(System::String ^ name, System::Reflection::BindingFlags bindingAttr, System::Reflection::Binder ^ binder, System::Reflection::CallingConventions callConvention, cli::array <Type ^> ^ types, cli::array <System::Reflection::ParameterModifier> ^ modifiers);
protected abstract System.Reflection.MethodInfo? GetMethodImpl (string name, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder? binder, System.Reflection.CallingConventions callConvention, Type[]? types, System.Reflection.ParameterModifier[]? modifiers);
protected abstract System.Reflection.MethodInfo GetMethodImpl (string name, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder binder, System.Reflection.CallingConventions callConvention, Type[] types, System.Reflection.ParameterModifier[] modifiers);
abstract member GetMethodImpl : string * System.Reflection.BindingFlags * System.Reflection.Binder * System.Reflection.CallingConventions * Type[] * System.Reflection.ParameterModifier[] -> System.Reflection.MethodInfo
Protected MustOverride Function GetMethodImpl (name As String, bindingAttr As BindingFlags, binder As Binder, callConvention As CallingConventions, types As Type(), modifiers As ParameterModifier()) As MethodInfo

Parameter

name
String

String yang berisi nama metode yang akan didapatkan.

bindingAttr
BindingFlags

Kombinasi bitwise dari nilai enumerasi yang menentukan bagaimana pencarian dilakukan.

-atau-

Default untuk mengembalikan null.

binder
Binder

Objek yang mendefinisikan sekumpulan properti dan memungkinkan pengikatan, yang dapat melibatkan pemilihan metode yang kelebihan beban, paksaan jenis argumen, dan pemanggilan anggota melalui refleksi.

-atau-

Referensi null (Nothing di Visual Basic), untuk menggunakan DefaultBinder.

callConvention
CallingConventions

Objek yang menentukan sekumpulan aturan yang akan digunakan mengenai urutan dan tata letak argumen, bagaimana nilai pengembalian diteruskan, register apa yang digunakan untuk argumen, dan proses apa yang membersihkan tumpukan.

types
Type[]

Array Type objek yang mewakili angka, urutan, dan jenis parameter untuk metode yang akan didapatkan.

-atau-

Array kosong dari jenis Type (yaitu, Jenis[] = Tipe baru[0]) untuk mendapatkan metode yang tidak mengambil parameter.

-atau-

null. Jika types adalah null, argumen tidak cocok.

modifiers
ParameterModifier[]

Array ParameterModifier objek yang mewakili atribut yang terkait dengan elemen yang sesuai dalam types array. Pengikat default tidak memproses parameter ini.

Mengembalikan

Objek yang mewakili metode yang cocok dengan persyaratan yang ditentukan, jika ditemukan; jika tidak, null.

Pengecualian

Lebih dari satu metode ditemukan dengan nama yang ditentukan dan cocok dengan batasan pengikatan yang ditentukan.

nameadalah null.

types bersifat multidimensi.

-atau-

modifiers bersifat multidimensi.

-atau-

types Dan modifiers janganlah kamu berkutat pada jalan yang lumayan.

Keterangan

Meskipun pengikat default tidak memproses ParameterModifier ( modifiers parameter ), Anda dapat menggunakan kelas abstrak System.Reflection.Binder untuk menulis pengikat kustom yang memproses modifiers. ParameterModifier hanya digunakan saat memanggil melalui interop COM, dan hanya parameter yang diteruskan oleh referensi yang ditangani.

Jika types adalah null, argumen tidak cocok.

Bendera filter berikut BindingFlags dapat digunakan untuk menentukan metode mana yang akan disertakan dalam pencarian:

  • Anda harus menentukan salah satu BindingFlags.Instance atau BindingFlags.Static untuk mendapatkan pengembalian.

  • Tentukan BindingFlags.Public untuk menyertakan metode publik dalam pencarian.

  • Tentukan BindingFlags.NonPublic untuk menyertakan metode non-publik (yaitu, privat, internal, dan metode yang dilindungi) dalam pencarian.

  • Tentukan BindingFlags.FlattenHierarchy untuk menyertakan public dan protected anggota statis naik hierarki; private anggota statis di kelas yang diwariskan tidak disertakan.

Bendera pengubah berikut BindingFlags dapat digunakan untuk mengubah cara kerja pencarian:

  • BindingFlags.IgnoreCase untuk mengabaikan kasus name.

  • BindingFlags.DeclaredOnly untuk mencari hanya metode yang dideklarasikan pada Type, bukan metode yang hanya diwarisi.

Lihat System.Reflection.BindingFlags untuk informasi lebih lanjut.

Lihat juga

Berlaku untuk