public static void Main()
var thisClass = new MyTestClass();
var thisEnum = MyTestEnum.Test;
var result1 = thisClass.GetCustomAttributesByName("MyTestAttribute");
var result2 = thisClass.GetCustomAttributesByName("MyTestAttribute", false);
var result3 = thisClass.GetType().GetCustomAttributesByName("MyTestAttribute");
var result4 = thisClass.GetType().GetCustomAttributesByName("MyTestAttribute", false);
var result5 = thisEnum.GetCustomAttributesByName("MyTestAttribute");
var result6 = thisEnum.GetCustomAttributesByName("MyTestAttribute", false);
Console.WriteLine(((MyTestAttribute) result1[0]).Text);
Console.WriteLine(((MyTestAttribute) result2[0]).Text);
Console.WriteLine(((MyTestAttribute) result3[0]).Text);
Console.WriteLine(((MyTestAttribute) result4[0]).Text);
Console.WriteLine(((MyTestAttribute) result5[0]).Text);
Console.WriteLine(((MyTestAttribute) result6[0]).Text);
[AttributeUsage(AttributeTargets.All, AllowMultiple = true)]
public class MyTestAttribute : Attribute
public MyTestAttribute(string text)