Module.GetCustomAttributes Method (Type, Boolean)

July 28, 2014

Returns custom attributes of the specified type.

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

public virtual Object[] GetCustomAttributes(
	Type attributeType,
	bool inherit
)

Parameters

attributeType
Type: System.Type
The type of attribute to get.
inherit
Type: System.Boolean
This argument is ignored for objects of this type.

Return Value

Type: System.Object []
An array that contains all custom attributes of the specified type.

Implements

ICustomAttributeProvider.GetCustomAttributes(Type, Boolean)

ExceptionCondition
ArgumentNullException

attributeType is null.

ArgumentException

attributeType is not a Type object supplied by the runtime.

The following example defines an attribute and applies it to the example's module. When the example runs, it retrieves the attributes that were applied to the module and displays them.


using System;
using System.Reflection;

//Define a module-level attribute.
[module: MySimpleAttribute("module-level")]

class Example
{
    public static void Demo(System.Windows.Controls.TextBlock outputBlock)
    {
        Module[] moduleArray = Assembly.GetExecutingAssembly().GetModules();
        Module myModule = moduleArray[0];
        object[] attributes = 
            myModule.GetCustomAttributes(typeof(MySimpleAttribute), true);
        foreach (Object o in attributes)
        {
            outputBlock.Text += 
               String.Format("Found this attribute on myModule: {0}.\n", o.ToString());
        }
    }
}

//A very simple custom attribute.
[AttributeUsage(AttributeTargets.Class | AttributeTargets.Module)]
public class MySimpleAttribute : Attribute
{
    private string name;

    public MySimpleAttribute(string newName)
    {
        name = newName;
    }
}

/* This example produces output similar to the following:

Found this attribute on myModule: MySimpleAttribute.
 */


Windows Phone OS

Supported in: 8.1, 8.0, 7.1, 7.0

Windows Phone

Show:
© 2014 Microsoft