=================================AttributeUsage類
屬性: AllowMultiple 指定是否可以在某個類或者方法中存在多個特性
例如在方法上有多個特性
[Developer("李四", "項目主管", Yesno = true)]
[Developer("王五", "項目經理", Yesno = true)]
public void aa()
{}
繼承屬性: Inherited <?xml:namespace prefix="[default]" ns="http://www.w3.org/1999/xhtml">?xml:namespace>假如有一個類繼承自我們的DemoClass,那麼當我們将RecordAttribute添加到DemoClass上時,DemoClass的子類也會獲得該特性。而當特性應用于一個方法,如果繼承自該類的子類将這個方法覆寫,那麼Inherited則用于說明是否子類方法是否繼承這個特性。
類: AttributeTargets
=================================AttributeTargets
publicenumAttributeTargets{
Assembly = 1, //可以對程式集應用屬性。
Module = 2, //可以對子產品應用屬性。
Class = 4, //可以對類應用屬性。
Struct = 8, //可以對結構應用屬性,即值類型。
Enum = 16, //可以對枚舉應用屬性。
Constructor = 32, //可以對構造函數應用屬性。
Method = 64, //可以對方法應用屬性。
Property = 128, //可以對屬性 (Property) 應用屬性 (Attribute)。
Field = 256, //可以對字段應用屬性。
Event = 512, //可以對事件應用屬性。
Interface = 1024, //可以對接口應用屬性。
Parameter = 2048, //可以對參數應用屬性。
Delegate = 4096, //可以對委托應用屬性。
ReturnValue = 8192, //可以對傳回值應用屬性。
GenericParameter = 16384, //可以對泛型參數應用屬性。
All = 32767, //可以對任何應用程式元素應用屬性。
}
=================================自定義特性(DeveloperAttribute類)
=================================特性的使用(必須在共有類型上使用)
using System.Runtime.InteropServices;
1,在類上使用
public class aa
2,在方法上使用
=================================檢索儲存在特性中的資訊
1,檢索存在類上的特性的資訊
2,檢索存在方法上的特性的資訊
本文出自 “” 部落格,請務必保留此出處