Attribute.GetCustomAttributes Method (MemberInfo, Type, Boolean)
Retrieves an array of the custom attributes applied to a member of a type. Parameters specify the member, the type of the custom attribute to search for, and whether to search ancestors of the member.
Assembly: mscorlib (in mscorlib.dll)
static member GetCustomAttributes : element:MemberInfo * type:Type * inherit:bool -> Attribute[]
Parameters
- element
-
Type:
System.Reflection.MemberInfo
An object derived from the MemberInfo class that describes a constructor, event, field, method, or property member of a class.
- type
-
Type:
System.Type
The type, or a base type, of the custom attribute to search for.
- inherit
-
Type:
System.Boolean
If true, specifies to also search the ancestors of element for custom attributes.
Return Value
Type: System.Attribute[]An Attribute array that contains the custom attributes of type type applied to element, or an empty array if no such custom attributes exist.
| Exception | Condition |
|---|---|
| ArgumentNullException | element or type is null. |
| ArgumentException | type is not derived from Attribute. |
| NotSupportedException | element is not a constructor, method, property, event, type, or field. |
| TypeLoadException | A custom attribute type cannot be loaded. |
The return value contains the custom attributes for ancestors of element if inherit is true.
Note |
|---|
Starting with the .NET Framework version 2.0, this method returns security attributes on methods, constructors, and types if the attributes are stored in the new metadata format. Assemblies compiled with version 2.0 or later use the new format. Dynamic assemblies and assemblies compiled with earlier versions of the .NET Framework use the old XML format. See Emitting Declarative Security Attributes. |
The following code example demonstrates the use of GetCustomAttributes, taking a MemberInfo as a parameter.
Available since 1.1
Portable Class Library
Supported in: portable .NET platforms
Silverlight
Available since 2.0
Windows Phone Silverlight
Available since 7.0
