Reading an attribute
suggest changeMethod GetCustomAttributes
returns an array of custom attributes applied to the member. After retrieving this array you can search for one or more specific attributes.
var attribute = typeof(MyClass).GetCustomAttributes().OfType<MyCustomAttribute>().Single();
Or iterate through them
foreach(var attribute in typeof(MyClass).GetCustomAttributes()) {
Console.WriteLine(attribute.GetType());
}
GetCustomAttribute
extension method from System.Reflection.CustomAttributeExtensions
retrieves a custom attribute of a specified type, it can be applied to any MemberInfo
.
var attribute = (MyCustomAttribute) typeof(MyClass).GetCustomAttribute(typeof(MyCustomAttribute));
GetCustomAttribute
also has generic signature to specify type of attribute to search for.
var attribute = typeof(MyClass).GetCustomAttribute<MyCustomAttribute>();
Boolean argument inherit
can be passed to both of those methods. If this value set to true
the ancestors of element would be also to inspected.
Found a mistake? Have a question or improvement idea?
Let me know.
Table Of Contents