Sdílet prostřednictvím


DynamicMethod.DefineParameter(Int32, ParameterAttributes, String) Metoda

Definice

Definuje parametr dynamické metody.

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

Parametry

position
Int32

Pozice parametru v seznamu parametrů. Parametry se indexují od čísla 1 prvního parametru.

attributes
ParameterAttributes

Bitové kombinace ParameterAttributes hodnot, které určují atributy parametru.

parameterName
String

Název parametru Název může být řetězec nulové délky.

Návraty

Vždy vrátí hodnotu null.

Výjimky

Metoda nemá žádné parametry.

-nebo-

position je menší než 0.

-nebo-

position je větší než počet parametrů metody.

Příklady

Následující příklad kódu ukazuje, jak definovat informace o parametru pro dynamickou metodu. Tento příklad kódu je součástí většího příkladu DynamicMethod pro třídu .

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

Poznámky

Pokud position je 0, DefineParameter metoda odkazuje na vrácenou hodnotu. Nastavení informací o parametru nemá žádný vliv na vrácenou hodnotu.

Pokud byla dynamická metoda již dokončena, voláním CreateDelegate metody DefineParameter nebo Invoke nemá metoda žádný vliv. Žádná výjimka se nevyvolá.

Platí pro