本文引用自 ms-help://MS.VSCC.v90/MS.MSDNQTR.v90.cht/fxref_mscorlib/html/bc3d7d70-886c-6572-18cd-3e82f6aeeabe.htm

Attribute 類別會將預先定義的系統資訊或使用者定義的自訂資訊,與目標項目產生關聯。目標項目可為組件 (Assembly)、類別、建構函式 (Constructor)、委派 (Delegate)、列舉、事件、欄位、介面、方法、可移植執行檔案模組、參數、屬性 (Property)、傳回值、結構或其他屬性 (Attribute)

屬性提供的資訊也稱為中繼資料 (Metadata)應用程式可在執行階段檢查中繼資料,來控制程式處理資料的方式,也可以在執行階段前,利用外部工具,來控制應用程式如何對其本身進行處理或維護(補充1)。例如,.NET Framework 可預先定義並使用屬性型別來控制執行階段行為,部分程式語言則可使用屬性 (Attribute) 型別,來表示 .NET Framework 一般型別系統未直接支援的語言功能。

所有屬性 (Attribute) 型別都是直接或間接衍生自 Attribute 類別。屬性 (Attribute) 可以套用至任何目標項目;多個屬性 (Attribute) 可以套用至同一個目標項目;衍生自目標項目的項目可以繼承屬性 (Attribute)。請使用 AttributeTargets 類別,指定要套用屬性的目標項目。

Attribute 類別包含便於擷取及測試自訂屬性 (Attribute) 的方法。如需屬性用法的詳細資訊,請參閱使用屬性擴充中繼資料(MSDN)。

 

補充1: 為什麼可以達成這樣,可參考範例中建立屬性的方法。每個套用的屬性在使用前都會經過屬性物件的包裹再執行原程式,這包裹的過程可以對目標物件進行處理。

 

arrow
arrow
    全站熱搜

    give 發表在 痞客邦 留言(1) 人氣()