如何在C#中构造自定义属性?

如何在C#中构造自定义属性?

属性用于向程序添加元数据,例如编译器指令和其他信息,例如注释、描述、方法和类。

.Net Framework 允许创建可用于存储声明性信息并可在运行时检索的自定义属性。

新的自定义属性派生自 System.Attribute 类。

//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

让我们构造一个名为 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;
      }
   }
}

以上就是如何在C#中构造自定义属性?的详细内容,更多请关注编程之家其它相关文章!

相关文章

目录简介使用JS互操作使用ClipLazor库创建项目使用方法简单测...
目录简介快速入门安装 NuGet 包实体类User数据库类DbFactory...
本文实现一个简单的配置类,原理比较简单,适用于一些小型项...
C#中Description特性主要用于枚举和属性,方法比较简单,记录...
[TOC] # 原理简介 本文参考[C#/WPF/WinForm/程序实现软件开机...
目录简介获取 HTML 文档解析 HTML 文档测试补充:使用 CSS 选...