Export (0) Print
Expand All
Expand Minimize
This topic has not yet been rated - Rate this topic

ParameterAttributes Enumeration

Defines the attributes that can be associated with a parameter. These are defined in CorHdr.h.

This enumeration has a FlagsAttribute attribute that allows a bitwise combination of its member values.

Namespace:  System.Reflection
Assembly:  mscorlib (in mscorlib.dll)
[SerializableAttribute]
[FlagsAttribute]
[ComVisibleAttribute(true)]
public enum ParameterAttributes
Member nameDescription
Supported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsHasDefaultSpecifies that the parameter has a default value.
Supported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsHasFieldMarshalSpecifies that the parameter has field marshaling information.
Supported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsInSpecifies that the parameter is an input parameter.
Supported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsLcidSpecifies that the parameter is a locale identifier (lcid).
Supported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsNoneSpecifies that there is no parameter attribute.
Supported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsOptionalSpecifies that the parameter is optional.
Supported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsOutSpecifies that the parameter is an output parameter.
Supported by the XNA FrameworkReserved3Reserved.
Supported by the XNA FrameworkReserved4Reserved.
Supported by the XNA FrameworkReservedMaskSpecifies that the parameter is reserved.
Supported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsRetvalSpecifies that the parameter is a return value.

To get the ParameterAttributes value, first get the Type. From the Type, get the ParameterInfo array. The ParameterAttributes value is within the array.

These enumerator values are dependent on optional metadata. Not all attributes are available from all compilers. See the appropriate compiler instructions to determine which enumerated values are available.

The following example displays the attributes of the specified parameter.

using System;
using System.Reflection;

class paramatt
{
    public static void mymethod (string str1, out string str2, ref string str3)
    {
        str2 = "string";
    }

    public static int Main(string[] args)
    {
        Console.WriteLine("\nReflection.ParameterAttributes");

        // Get the Type and the method.

        Type Mytype = Type.GetType("paramatt");
        MethodBase Mymethodbase = Mytype.GetMethod("mymethod");

        // Display the method.
        Console.Write("\nMymethodbase = " + Mymethodbase);

        // Get the ParameterInfo array.
        ParameterInfo[] Myarray = Mymethodbase.GetParameters();

        // Get and display the attributes for the second parameter.
        ParameterAttributes Myparamattributes = Myarray[1].Attributes;

        Console.Write("\nFor the second parameter:\nMyparamattributes = " 
            + (int) Myparamattributes
            + ", which is an "
            + Myparamattributes.ToString());

        return 0;
    }
}

.NET Framework

Supported in: 4.5.1, 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Portable Class Library

Supported in: Portable Class Library

.NET for Windows Store apps

Supported in: Windows 8

.NET for Windows Phone apps

Supported in: Windows Phone 8.1, Windows Phone 8, Silverlight 8.1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Show:
© 2014 Microsoft. All rights reserved.