MethodBase.GetParameters Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Wanneer deze wordt overschreven in een afgeleide klasse, haalt u de parameters van de opgegeven methode of constructor op.
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()
Retouren
Een matrix van het type ParameterInfo met informatie die overeenkomt met de handtekening van de methode (of constructor) die door dit MethodBase exemplaar wordt weerspiegeld.
Implementeringen
Voorbeelden
In het volgende voorbeeld wordt de GetParameters methode gebruikt om de parameters van de Invoke methode van een gemachtigde op te halen.
In het voorbeeld wordt een gemachtigde gedefinieerd met de naam MyDelegate en een gebeurtenis met de naam ev van het type MyDelegate. De code in de Main methode detecteert de gebeurtenishandtekening door het gedelegeerdetype van de gebeurtenis op te halen, de Invoke methode van het type gedelegeerde op te halen en vervolgens de parameters op te halen en weer te geven.
// 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