MethodBase.GetParameters Methode

Definition

Wenn sie in einer abgeleiteten Klasse überschrieben werden, werden die Parameter der angegebenen Methode oder des angegebenen Konstruktors ermittelt.

public:
 abstract cli::array <System::Reflection::ParameterInfo ^> ^ GetParameters();
public abstract System.Reflection.ParameterInfo[] GetParameters();
abstract member GetParameters : unit -> System.Reflection.ParameterInfo[]
Public MustOverride Function GetParameters () As ParameterInfo()

Gibt zurück

Ein Array vom Typ ParameterInfo , das Informationen enthält, die der Signatur der Methode (oder des Konstruktors) entsprechen, die von dieser MethodBase Instanz reflektiert werden.

Implementiert

Beispiele

Im folgenden Beispiel wird die GetParameters Methode verwendet, um die Parameter der Invoke Methode eines Delegaten abzurufen.

Im Beispiel wird ein Delegat mit dem Namen MyDelegate und ein Ereignis vom Typ evdefiniertMyDelegate. Der Code in der Main Methode ermittelt die Ereignissignatur, indem der Delegattyp des Ereignisses abgerufen, die Invoke Methode des Delegatentyps abgerufen und anschließend die Parameter abgerufen und angezeigt wird.

// The following example uses instances of classes in
// the System.Reflection namespace to discover an event argument type.
using System;
using System.Reflection;

public delegate void MyDelegate(int i);
public class MainClass
{
    public event MyDelegate ev;

    public static void Main()
    {
        Type delegateType = typeof(MainClass).GetEvent("ev").EventHandlerType;
        MethodInfo invoke = delegateType.GetMethod("Invoke");
        ParameterInfo[] pars = invoke.GetParameters();
        foreach (ParameterInfo p in pars)
        {
            Console.WriteLine(p.ParameterType);
        }
    }
}
// The example displays the following output:
//       System.Int32
Imports System.Reflection

Public Delegate Sub MyDelegate(ByVal i As Integer)

Public Class MainClass
    Public Event ev As MyDelegate

    Public Shared Sub Main()
        Dim delegateType As Type = GetType(MainClass).GetEvent("ev").EventHandlerType
        Dim invoke As MethodInfo = delegateType.GetMethod("Invoke")
        Dim pars As ParameterInfo() = invoke.GetParameters()
        For Each p As ParameterInfo In pars
            Console.WriteLine(p.ParameterType)
        Next 
    End Sub 
End Class 
' The example displays the following output:
'     System.Int32

Gilt für:

Weitere Informationen