DynamicMethod.DefineParameter(Int32, ParameterAttributes, String) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Определяет параметр динамического метода.
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
Параметры
- position
- Int32
Позиция параметра в списке параметров. Параметры индексируются начиная с числа 1 для первого параметра.
- attributes
- ParameterAttributes
Побитовое сочетание значений ParameterAttributes , указывающее атрибуты параметра.
- parameterName
- String
Имя параметра. Имя может быть строкой нулевой длины.
Возвращаемое значение
Всегда возвращает значение null.
Исключения
Метод не имеет параметров.
–или–
position меньше 0.
–или–
position больше числа параметров метода.
Примеры
В следующем примере кода показано, как определить сведения о параметрах для динамического метода. Этот пример кода является частью более крупного примера, предоставленного для DynamicMethod класса.
// 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")
Комментарии
Если position значение равно 0, DefineParameter метод ссылается на возвращаемое значение. Настройка сведений о параметрах не влияет на возвращаемое значение.
Если динамический метод уже завершен, вызывая CreateDelegate метод или Invoke метод, DefineParameter метод не действует. Исключение не возникает.