DynamicMethod.DefineParameter(Int32, ParameterAttributes, String) Metódus

Definíció

A dinamikus metódus paraméterét határozza meg.

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

Paraméterek

position
Int32

A paraméter helye a paraméterlistában. A paraméterek indexelése az első paraméter 1-es számával kezdődik.

attributes
ParameterAttributes

A paraméter attribútumait megadó értékek bitenkénti kombinációja ParameterAttributes .

parameterName
String

A paraméter neve. A név lehet nulla hosszúságú sztring.

Válaszok

Mindig nullad vissza.

Kivételek

A metódusnak nincsenek paraméterei.

-vagy-

position kisebb, mint 0.

-vagy-

position nagyobb, mint a metódus paramétereinek száma.

Példák

Az alábbi példakód bemutatja, hogyan definiálhat paraméteradatokat egy dinamikus metódushoz. Ez a példakód egy nagyobb, az DynamicMethod osztályhoz tartozó példa része.

// 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")

Megjegyzések

Ha position 0, akkor a metódus a DefineParameter visszatérési értékre hivatkozik. A paraméteradatok beállítása nincs hatással a visszatérési értékre.

Ha a dinamikus metódus már befejeződött, a CreateDelegateInvoke metódus DefineParameter meghívásával nincs hatása. Nincs kivétel.

A következőre érvényes: