讀一個屬性

方法 GetCustomAttributes 返回應用於成員的自定義屬性陣列。檢索此陣列後,你可以搜尋一個或多個特定屬性。

var attribute = typeof(MyClass).GetCustomAttributes().OfType<MyCustomAttribute>().Single();

或者遍歷它們

foreach(var attribute in typeof(MyClass).GetCustomAttributes()) {
    Console.WriteLine(attribute.GetType());
}

System.Reflection.CustomAttributeExtensionsGetCustomAttribute 擴充套件方法檢索指定型別的自定義屬性,它可以應用於任何 MemberInfo

var attribute = (MyCustomAttribute) typeof(MyClass).GetCustomAttribute(typeof(MyCustomAttribute));

GetCustomAttribute 還具有通用簽名,用於指定要搜尋的屬性型別。

var attribute = typeof(MyClass).GetCustomAttribute<MyCustomAttribute>();

布林引數 inherit 可以傳遞給這兩個方法。如果將此值設定為 true,則元素的祖先也將被檢查。