DynamicMethod.DefineParameter Method

Microsoft Silverlight will reach end of support after October 2021. Learn more.

Defines a parameter of the dynamic method.

Namespace:  System.Reflection.Emit
Assembly:  mscorlib (in mscorlib.dll)

Syntax

'Declaration
Public Function DefineParameter ( _
    position As Integer, _
    attributes As ParameterAttributes, _
    parameterName As String _
) As ParameterBuilder
public ParameterBuilder DefineParameter(
    int position,
    ParameterAttributes attributes,
    string parameterName
)

Parameters

  • position
    Type: System.Int32
    The position of the parameter in the parameter list. Parameters are indexed beginning with the number 1 for the first parameter.
  • parameterName
    Type: System.String
    The name of the parameter. The name can be a zero-length string.

Return Value

Type: System.Reflection.Emit.ParameterBuilder
Always returns nulla null reference (Nothing in Visual Basic).

Exceptions

Exception Condition
ArgumentOutOfRangeException

The method has no parameters.

-or-

position is less than 0.

-or-

position is greater than the number of the method's parameters.

Remarks

If position is 0, the DefineParameter method refers to the return value. Setting parameter information has no effect on the return value.

If the dynamic method has already been completed, by calling the CreateDelegate or Invoke method, the DefineParameter method has no effect. No exception is thrown.

Examples

The following code example shows how to define parameter information for a dynamic method. This code example is part of a larger example provided for the DynamicMethod class.

' 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");

Version Information

Silverlight

Supported in: 5, 4, 3

Silverlight for Windows Phone

Supported in: Windows Phone OS 7.1

Platforms

For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.