Type.GetMethodImpl Metod

Definition

Överlagringar

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

När den åsidosättas i en härledd klass söker du efter den angivna metoden vars parametrar matchar de angivna argumenttyperna och modifierarna med hjälp av de angivna bindningsbegränsningarna och den angivna anropskonventionen.

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

När den åsidosättas i en härledd klass söker du efter den angivna metoden vars parametrar matchar det angivna allmänna parameterantalet, argumenttyper och modifierare, med hjälp av de angivna bindningsbegränsningarna och den angivna anropskonventionen.

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

Källa:
Type.cs
Källa:
Type.cs
Källa:
Type.cs
Källa:
Type.cs
Källa:
Type.cs

När den åsidosättas i en härledd klass söker du efter den angivna metoden vars parametrar matchar de angivna argumenttyperna och modifierarna med hjälp av de angivna bindningsbegränsningarna och den angivna anropskonventionen.

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

Parametrar

name
String

Strängen som innehåller namnet på den metod som ska hämtas.

bindingAttr
BindingFlags

En bitvis kombination av uppräkningsvärdena som anger hur sökningen ska utföras.

-eller-

Default för att returnera null.

binder
Binder

Ett objekt som definierar en uppsättning egenskaper och möjliggör bindning, vilket kan innebära val av en överbelastad metod, tvång av argumenttyper och anrop av en medlem genom reflektion.

-eller-

En null-referens (Nothing i Visual Basic) för att använda DefaultBinder.

callConvention
CallingConventions

Objektet som anger vilken uppsättning regler som ska användas för argumentens ordning och layout, hur returvärdet skickas, vilka register som används för argument och vilken process som rensar stacken.

types
Type[]

En matris med Type objekt som representerar antalet, ordningen och typen av parametrar som metoden ska hämta.

-eller-

En tom matris av typen Type (d.v.s. Type[] types = new Type[0]) för att hämta en metod som inte tar några parametrar.

-eller-

null. Om types är nullmatchas inte argumenten.

modifiers
ParameterModifier[]

En matris med ParameterModifier objekt som representerar attributen som är associerade med motsvarande element i matrisen types . Standardbindaren bearbetar inte den här parametern.

Returer

Ett objekt som representerar metoden som matchar de angivna kraven, om det hittas; annars . null

Attribut

Undantag

Mer än en metod hittas med det angivna namnet och matchar de angivna bindningsbegränsningarna.

name är null.

types är flerdimensionellt.

-eller-

modifiers är flerdimensionellt.

-eller-

types och modifiers har inte samma längd.

Kommentarer

Även om standardbindaren inte bearbetar ParameterModifier (parametern modifiers) kan du använda den abstrakta klassen System.Reflection.Binder för att skriva en anpassad bindare som bearbetar modifiers. ParameterModifier används endast vid anrop via COM-interop, och endast parametrar som skickas av referens hanteras.

Om types är nullmatchas inte argumenten.

Följande BindingFlags filterflaggor kan användas för att definiera vilka metoder som ska ingå i sökningen:

  • Du måste ange antingen BindingFlags.Instance eller BindingFlags.Static för att få en retur.

  • Ange BindingFlags.Public att offentliga metoder ska inkluderas i sökningen.

  • Ange BindingFlags.NonPublic att icke-offentliga metoder (dvs. privata, interna och skyddade metoder) ska inkluderas i sökningen.

  • Ange BindingFlags.FlattenHierarchy att inkludera public och protected statiska medlemmar i hierarkin. private Statiska medlemmar i ärvda klasser ingår inte.

Följande BindingFlags modifierarflaggor kan användas för att ändra hur sökningen fungerar:

  • BindingFlags.IgnoreCase för att ignorera fallet namemed .

  • BindingFlags.DeclaredOnly om du bara vill söka efter de metoder som deklarerats på Type, inte metoder som helt enkelt ärvts.

Mer information finns i System.Reflection.BindingFlags.

Se även

Gäller för

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

Källa:
Type.cs
Källa:
Type.cs
Källa:
Type.cs
Källa:
Type.cs
Källa:
Type.cs

När den åsidosättas i en härledd klass söker du efter den angivna metoden vars parametrar matchar det angivna allmänna parameterantalet, argumenttyper och modifierare, med hjälp av de angivna bindningsbegränsningarna och den angivna anropskonventionen.

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

Parametrar

name
String

Strängen som innehåller namnet på den metod som ska hämtas.

genericParameterCount
Int32

Antalet generiska typparametrar för metoden.

bindingAttr
BindingFlags

En bitvis kombination av uppräkningsvärdena som anger hur sökningen ska utföras.

-eller-

Default för att returnera null.

binder
Binder

Ett objekt som definierar en uppsättning egenskaper och möjliggör bindning, vilket kan innebära val av en överbelastad metod, tvång av argumenttyper och anrop av en medlem genom reflektion.

-eller-

En null-referens (Nothing i Visual Basic) för att använda DefaultBinder.

callConvention
CallingConventions

Objektet som anger vilken uppsättning regler som ska användas för argumentens ordning och layout, hur returvärdet skickas, vilka register som används för argument och vilken process som rensar stacken.

types
Type[]

En matris med Type objekt som representerar antalet, ordningen och typen av parametrar som metoden ska hämta.

-eller-

En tom matris av typen Type (d.v.s. Type[] types = new Type[0]) för att hämta en metod som inte tar några parametrar.

-eller-

null. Om types är nullmatchas inte argumenten.

modifiers
ParameterModifier[]

En matris med ParameterModifier objekt som representerar attributen som är associerade med motsvarande element i matrisen types . Standardbindaren bearbetar inte den här parametern.

Returer

Ett objekt som representerar metoden som matchar det angivna allmänna parameterantalet, argumenttyper, modifierare, bindningsbegränsningar och anropande konvention, om det hittas; annars . null

Attribut

Undantag

Metoden måste åsidosättas och anropas i en härledd klass.

Gäller för