Freigeben über


DynamicMethod.DefineParameter(Int32, ParameterAttributes, String) Methode

Definition

Definiert einen Parameter der dynamischen Methode.

public:
 System::Reflection::Emit::ParameterBuilder ^ DefineParameter(int position, System::Reflection::ParameterAttributes attributes, System::String ^ parameterName);
public System.Reflection.Emit.ParameterBuilder? DefineParameter (int position, System.Reflection.ParameterAttributes attributes, string? parameterName);
public System.Reflection.Emit.ParameterBuilder DefineParameter (int position, System.Reflection.ParameterAttributes attributes, string parameterName);
member this.DefineParameter : int * System.Reflection.ParameterAttributes * string -> System.Reflection.Emit.ParameterBuilder
Public Function DefineParameter (position As Integer, attributes As ParameterAttributes, parameterName As String) As ParameterBuilder

Parameter

position
Int32

Die Position des Parameters in der Parameterliste. Parameter werden beginnend mit der Zahl 1 (für den ersten Parameter) indiziert.

attributes
ParameterAttributes

Eine bitweise Kombination von ParameterAttributes-Werten, die die Attribute des Parameters angibt.

parameterName
String

Der Name des Parameters. Der Name kann eine leere Zeichenfolge sein.

Gibt zurück

Gibt immer null zurück.

Ausnahmen

Die Methode hat keine Parameter.

- oder -

position ist kleiner als 0.

- oder -

position ist größer als die Anzahl der Parameter der Methode.

Beispiele

Im folgenden Codebeispiel wird gezeigt, wie Parameterinformationen für eine dynamische Methode definiert werden. Dieses Codebeispiel ist Teil eines größeren Beispiels, das für die DynamicMethod-Klasse bereitgestellt wird.

// Add parameter information to the dynamic method. (This is not
// necessary, but can be useful for debugging.) For each parameter,
// identified by position, supply the parameter attributes and a 
// parameter name.
hello->DefineParameter(1, ParameterAttributes::In, "message");
hello->DefineParameter(2, ParameterAttributes::In, "valueToReturn");
// Add parameter information to the dynamic method. (This is not
// necessary, but can be useful for debugging.) For each parameter,
// identified by position, supply the parameter attributes and a
// parameter name.
hello.DefineParameter(1, ParameterAttributes.In, "message");
hello.DefineParameter(2, ParameterAttributes.In, "valueToReturn");
' Add parameter information to the dynamic method. (This is not
' necessary, but can be useful for debugging.) For each parameter,
' identified by position, supply the parameter attributes and a 
' parameter name.
hello.DefineParameter(1, ParameterAttributes.In, "message")
hello.DefineParameter(2, ParameterAttributes.In, "valueToReturn")

Hinweise

Wenn position 0 ist, bezieht sich die DefineParameter -Methode auf den Rückgabewert. Das Festlegen von Parameterinformationen hat keine Auswirkung auf den Rückgabewert.

Wenn die dynamische Methode bereits abgeschlossen wurde, hat die Methode durch Aufrufen der CreateDelegate -Methode oder Invoke keine DefineParameter Auswirkung. Es wird keine Ausnahme ausgelöst.

Gilt für: