1. 程式人生 > >C#中Attribute/特性的使用

C#中Attribute/特性的使用

  • 類似Java的註解/Annotation
  • 特性是用於在執行時傳遞程式中各種元素(比如類、方法、結構、列舉、元件等)的行為資訊的宣告性標籤,這個標籤可以有多個。您可以通過使用特性向程式新增宣告性資訊。一個宣告性標籤是通過放置在它所應用的元素前面的方括號([ ])來描述的。
  • 特性可以描述我們的程式碼,或者影響應用程式的行為。特性可以用來處理多種問題,比如序列化、資料驗證、程式的安全特徵等等。
  • 本質上也是一個繼承自Attribute的類,目的是給某個類、介面、成員變數等增加一個附加邏輯(如許可權檢查、範圍檢查等),這個邏輯可以通過反射去觸發;或者只是給他增加一些資料,邏輯也合併到反射時一起去處理邏輯
  • 有一些預定義的特性,相當於處理邏輯(在Attribute的定義中)和反射觸發(比如MVC的IsValidate())的地方幫你搞好了