Type.GetMethodImpl Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Przeciążenia
GetMethodImpl(String, Int32, BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[]) |
Podczas zastępowania 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[]) |
Podczas zastępowania 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[])
- Źródło:
- Type.cs
- Źródło:
- Type.cs
- Źródło:
- Type.cs
Podczas zastępowania 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);
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
Parametry
- name
- String
Ciąg zawierający nazwę metody pobierania.
- genericParameterCount
- Int32
Liczba parametrów typu ogólnego metody.
- bindingAttr
- BindingFlags
Bitowa kombinacja wartości wyliczenia, które określają sposób przeprowadzania wyszukiwania.
-lub-
Default , aby zwrócić wartość null
.
- binder
- Binder
Obiekt, który określa zestaw właściwości i umożliwia powiązanie, które może obejmować wybór metody przeciążonej, wymuszanie typów argumentu i wywołanie elementu członkowskiego przez odbicie.
-lub-
Odwołanie o wartości null (Nothing
w Visual Basic) do używania elementu 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 type[] types = new Type[0]), aby uzyskać metodę, która nie przyjmuje żadnych parametrów.
-lub-
null
. Jeśli types
parametr ma null
wartość , argumenty nie są dopasowywane.
- modifiers
- ParameterModifier[]
Tablica ParameterModifier obiektów reprezentujących atrybuty skojarzone z odpowiednim elementem w tablicy types
. Domyślny konsolidator nie przetwarza tego parametru.
Zwraca
Obiekt reprezentujący metodę zgodną z określoną ogólną liczbą parametrów, typami argumentów, modyfikatorami, ograniczeniami powiązań i konwencją wywoływania, jeśli zostanie znaleziona; w przeciwnym razie , null
.
Wyjątki
Metoda musi zostać przesłonięta i wywołana w klasie pochodnej.
Dotyczy
GetMethodImpl(String, BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[])
- Źródło:
- Type.cs
- Źródło:
- Type.cs
- Źródło:
- Type.cs
Podczas zastępowania 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);
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
Parametry
- name
- String
Ciąg zawierający nazwę metody pobierania.
- bindingAttr
- BindingFlags
Bitowa kombinacja wartości wyliczenia, które określają sposób przeprowadzania wyszukiwania.
-lub-
Default , aby zwrócić wartość null
.
- binder
- Binder
Obiekt, który określa zestaw właściwości i umożliwia powiązanie, które może obejmować wybór metody przeciążonej, wymuszanie typów argumentu i wywołanie elementu członkowskiego przez odbicie.
-lub-
Odwołanie o wartości null (Nothing
w Visual Basic) do używania elementu 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 type[] types = new Type[0]), aby uzyskać metodę, która nie przyjmuje żadnych parametrów.
-lub-
null
. Jeśli types
parametr ma null
wartość , argumenty nie są dopasowywane.
- modifiers
- ParameterModifier[]
Tablica ParameterModifier obiektów reprezentujących atrybuty skojarzone z odpowiednim elementem w tablicy types
. Domyślny konsolidator nie przetwarza tego parametru.
Zwraca
Obiekt reprezentujący metodę zgodną z określonymi wymaganiami, jeśli zostanie znaleziony; w przeciwnym razie , null
.
Wyjątki
Znaleziono więcej niż jedną metodę o określonej nazwie i pasującą do ograniczeń w określonym powiązaniu.
name
to null
.
Parametr types
jest wielowymiarowy.
-lub-
Parametr modifiers
jest wielowymiarowy.
-lub-
types
i modifiers
nie mają tej samej długości.
Bieżący typ to lub TypeBuilderGenericTypeParameterBuilder.
Uwagi
Mimo że domyślny binder nie przetwarza ParameterModifier (parametr), modifiers
można użyć klasy abstrakcyjnej System.Reflection.Binder do napisania niestandardowego powiązania, który przetwarza modifiers
.
ParameterModifier
Jest używany tylko podczas wywoływania międzyoperacyjności modelu COM i obsługiwane są tylko parametry przekazywane przez odwołanie.
Jeśli types
parametr ma null
wartość , argumenty nie są dopasowywane.
Następujące BindingFlags flagi filtru mogą służyć do definiowania metod do uwzględnienia w wyszukiwaniu:
Musisz określić wartość
BindingFlags.Instance
lubBindingFlags.Static
, aby uzyskać zwrot.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
iprotected
statyczne elementy członkowskie w hierarchii;private
statyczne elementy członkowskie w klasach dziedziczynych nie są uwzględniane.
Następujące BindingFlags flagi modyfikatora mogą służyć do zmiany sposobu działania wyszukiwania:
BindingFlags.IgnoreCase
aby 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ż
- MethodInfo
- String
- BindingFlags
- Binder
- DefaultBinder
- CallingConventions
- ParameterModifier
- GetMethod(String, BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[])
- GetMethods()