阅读量:0
在C#中,可以通过创建自定义属性类来自定义元数据属性。以下是一个示例:
using System; [AttributeUsage(AttributeTargets.Class | AttributeTargets.Method, AllowMultiple = true)] public class CustomAttribute : Attribute { public string Description { get; set; } public CustomAttribute(string description) { Description = description; } } [CustomAttribute("This is a custom attribute")] public class MyClass { [CustomAttribute("This is a custom method attribute")] public void MyMethod() { // do something } } class Program { static void Main() { Console.WriteLine("Custom attribute applied to class: " + typeof(MyClass).GetCustomAttributes(typeof(CustomAttribute), false)[0]); Console.WriteLine("Custom attribute applied to method: " + typeof(MyClass).GetMethod("MyMethod").GetCustomAttributes(typeof(CustomAttribute), false)[0]); } }
在上面的示例中,我们创建了一个CustomAttribute类,它继承自Attribute类,并定义了一个Description属性。然后,我们在MyClass类和MyMethod方法上应用了CustomAttribute自定义属性。在Main方法中,我们可以使用反射来访问这些自定义属性并打印它们的值。
请注意,我们可以在CustomAttribute的构造函数中传递描述信息,并且我们可以通过AttributeUsage特性来指定自定义属性可以应用于哪些目标。