如何使用 C# 建立自定義特性?


可以用來儲存宣告性資訊的自定義特性,並在執行時進行檢索。

讓我們看看如何宣告自定義特性。

[AttributeUsage (
AttributeTargets.Class |
AttributeTargets.Constructor |
AttributeTargets.Field |
AttributeTargets.Method |
AttributeTargets.Property,
AllowMultiple = true)]
public class DeBugInfo : System.Attribute

對於我們的示例,讓我們構造一個名為 DeBugInfo 的自定義特性,它儲存透過除錯任何程式獲得的資訊。

DeBugInfo 類具有三個用於儲存前三個資訊和一個用於儲存訊息的公有屬性。因此,錯誤編號、開發人員姓名和審查日期是 DeBugInfo 類的固定引數,以及訊息是可選引數或已命名引數。

每個特性至少必須有一個建構函式。讓我們看看如何建立自定義函式。

示例

//a custom attribute BugFix to be assigned to a class and its members
[AttributeUsage (
AttributeTargets.Class |
AttributeTargets.Constructor |
AttributeTargets.Field |
AttributeTargets.Method |
AttributeTargets.Property,
AllowMultiple = true)]

public class DeBugInfo : System.Attribute {
   private int bugNo;
   private string developer;
   private string lastReview;
   public string message;
   public DeBugInfo(int bg, string dev, string d) {
      this.bugNo = bg;
      this.developer = dev;
      this.lastReview = d;
   }
   public int BugNo {
      get {
         return bugNo;
      }
   }
   public string Developer {
      get {
         return developer;
      }
   }
   public string LastReview {
      get {
         return lastReview;
      }
   }
   public string Message {
      get {
         return message;
      }
      set {
         message = value;
      }
   }
}

更新於:23-Jun-2020

223 人次瀏覽

開啟您的 職業

完成課程以獲得認證

開始
廣告
© . All rights reserved.