Udostępnij za pośrednictwem


Type.GetMethodImpl Metoda

Definicja

Przeciążenia

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

Po zastąpieniu w klasie pochodnej wyszukuje określoną metodę, której parametry są zgodne z określonymi typami argumentów i modyfikatorami, przy użyciu określonych ograniczeń powiązania i określonej konwencji wywoływania.

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

Po zastąpieniu w klasie pochodnej wyszukuje określoną metodę, której parametry są zgodne z określoną ogólną liczbą parametrów, typami argumentów i modyfikatorami, przy użyciu określonych ograniczeń powiązania i określonej konwencji wywoływania.

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

Źródło:
Type.cs
Źródło:
Type.cs
Źródło:
Type.cs
Źródło:
Type.cs
Źródło:
Type.cs

Po zastąpieniu w klasie pochodnej wyszukuje określoną metodę, której parametry są zgodne z określonymi typami argumentów i modyfikatorami, przy użyciu określonych ograniczeń powiązania i określonej konwencji wywoływania.

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);
[System.Diagnostics.CodeAnalysis.DynamicallyAccessedMembers(System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.NonPublicMethods | System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.PublicMethods)]
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);
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);
[<System.Diagnostics.CodeAnalysis.DynamicallyAccessedMembers(System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.NonPublicMethods | System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.PublicMethods)>]
abstract member GetMethodImpl : string * System.Reflection.BindingFlags * System.Reflection.Binder * System.Reflection.CallingConventions * Type[] * System.Reflection.ParameterModifier[] -> System.Reflection.MethodInfo
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

Parametry

name
String

Ciąg zawierający nazwę metody do pobrania.

bindingAttr
BindingFlags

Bitowa kombinacja wartości wyliczenia określających sposób przeprowadzania wyszukiwania.

— lub —

Default aby zwrócić wartość null.

binder
Binder

Obiekt, który definiuje zestaw właściwości i włącza powiązanie, które może obejmować wybór metody przeciążonej, przymus typów argumentów i wywołanie elementu członkowskiego za pomocą odbicia.

— lub —

Odwołanie o wartości null (Nothing w Visual Basic), aby użyć DefaultBinder.

callConvention
CallingConventions

Obiekt, który określa zestaw reguł do użycia w odniesieniu do kolejności i układu argumentów, sposobu przekazywania wartości zwracanej, rejestrów używanych do argumentów i procesu czyszczenia stosu.

types
Type[]

Tablica Type obiektów reprezentujących liczbę, kolejność i typ parametrów metody do pobrania.

— lub —

Pusta tablica typu Type (czyli typy Type[] = nowy typ[0]), aby uzyskać metodę, która nie przyjmuje żadnych parametrów.

— lub —

null. Jeśli types parametr ma nullwartość , argumenty nie są zgodne.

modifiers
ParameterModifier[]

Tablica ParameterModifier obiektów reprezentujących atrybuty skojarzone z odpowiednim elementem w tablicy types . Domyślny binder nie przetwarza tego parametru.

Zwraca

Obiekt reprezentujący metodę zgodną z określonymi wymaganiami, jeśli zostanie znaleziony; w przeciwnym razie, null.

Atrybuty

Wyjątki

Znaleziono więcej niż jedną metodę o określonej nazwie i dopasowaniu określonych ograniczeń powiązania.

Parametr name ma wartość null.

types jest wielowymiarowa.

— lub —

modifiers jest wielowymiarowa.

— lub —

types i modifiers nie mają tej samej długości.

Uwagi

Mimo że domyślny binder nie przetwarza ParameterModifier (parametr modifiers), można użyć abstrakcyjnej klasy System.Reflection.Binder , aby napisać niestandardowy binder, który przetwarza modifiers. ParameterModifier jest używany tylko przy wywołaniach międzyoperacyjnych COM, a obsługiwane są tylko parametry przekazywane przez referencję.

Jeśli types parametr ma nullwartość , argumenty nie są zgodne.

Następujące BindingFlags flagi filtru mogą służyć do definiowania metod do uwzględnienia w wyszukiwaniu:

  • Musisz określić wartość BindingFlags.Instance lub BindingFlags.Static w celu uzyskania zwrotu.

  • Określ BindingFlags.Public , aby uwzględnić metody publiczne w wyszukiwaniu.

  • Określ BindingFlags.NonPublic , aby uwzględnić metody inne niż publiczne (czyli metody prywatne, wewnętrzne i chronione) w wyszukiwaniu.

  • Określ BindingFlags.FlattenHierarchy, aby uwzględnić public i protected statyczne członków w hierarchii; private statyczne członkowie w klasach dziedziczonych nie są uwzględniane.

Następujące BindingFlags flagi modyfikatora mogą służyć do zmiany sposobu działania wyszukiwania:

  • BindingFlags.IgnoreCaseaby zignorować przypadek .name

  • BindingFlags.DeclaredOnly aby wyszukać tylko metody zadeklarowane w metodzie Type, a nie metody, które zostały po prostu odziedziczone.

Aby uzyskać więcej informacji, zobacz System.Reflection.BindingFlags.

Zobacz też

Dotyczy

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

Źródło:
Type.cs
Źródło:
Type.cs
Źródło:
Type.cs
Źródło:
Type.cs
Źródło:
Type.cs

Po zastąpieniu w klasie pochodnej wyszukuje określoną metodę, której parametry są zgodne z określoną ogólną liczbą parametrów, typami argumentów i modyfikatorami, przy użyciu określonych ograniczeń powiązania i określonej konwencji wywoływania.

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);
[System.Diagnostics.CodeAnalysis.DynamicallyAccessedMembers(System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.NonPublicMethods | System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.PublicMethods)]
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);
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);
[<System.Diagnostics.CodeAnalysis.DynamicallyAccessedMembers(System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.NonPublicMethods | System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.PublicMethods)>]
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
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

Parametry

name
String

Ciąg zawierający nazwę metody do pobrania.

genericParameterCount
Int32

Liczba parametrów typu ogólnego metody.

bindingAttr
BindingFlags

Bitowa kombinacja wartości wyliczenia określających sposób przeprowadzania wyszukiwania.

— lub —

Default aby zwrócić wartość null.

binder
Binder

Obiekt, który definiuje zestaw właściwości i włącza powiązanie, które może obejmować wybór metody przeciążonej, przymus typów argumentów i wywołanie elementu członkowskiego za pomocą odbicia.

— lub —

Odwołanie o wartości null (Nothing w Visual Basic), aby użyć DefaultBinder.

callConvention
CallingConventions

Obiekt, który określa zestaw reguł do użycia w odniesieniu do kolejności i układu argumentów, sposobu przekazywania wartości zwracanej, rejestrów używanych do argumentów i procesu czyszczenia stosu.

types
Type[]

Tablica Type obiektów reprezentujących liczbę, kolejność i typ parametrów metody do pobrania.

— lub —

Pusta tablica typu Type (czyli typy Type[] = nowy typ[0]), aby uzyskać metodę, która nie przyjmuje żadnych parametrów.

— lub —

null. Jeśli types parametr ma nullwartość , argumenty nie są zgodne.

modifiers
ParameterModifier[]

Tablica ParameterModifier obiektów reprezentujących atrybuty skojarzone z odpowiednim elementem w tablicy types . Domyślny binder nie przetwarza tego parametru.

Zwraca

Obiekt reprezentujący metodę zgodną z określoną ogólną liczbą parametrów, typami argumentów, modyfikatorami, ograniczeniami powiązania i konwencją wywoływania, jeśli zostanie znaleziona; w przeciwnym razie, null.

Atrybuty

Wyjątki

Metoda musi zostać przesłonięta i wywołana w klasie pochodnej.

Dotyczy