在C#中,Attributes.Add()方法用于向類型、成員或程序集添加自定義屬性。它的使用方式如下:
using System;
[AttributeUsage(AttributeTargets.Class | AttributeTargets.Method)]
public class CustomAttribute : Attribute
{
// 自定義屬性的成員和方法
}
[CustomAttribute]
public class MyClass
{
[CustomAttribute]
public void MyMethod()
{
}
}
using System.Reflection;
public class Program
{
public static void Main()
{
Type type = typeof(MyClass);
MethodInfo methodInfo = type.GetMethod("MyMethod");
CustomAttribute customAttribute = new CustomAttribute();
methodInfo.GetCustomAttributes().Add(customAttribute);
}
}
在上面的示例中,我們通過typeof()方法獲取了MyClass的Type對象,然后使用GetMethod()方法獲取了MyMethod的MethodInfo對象。接下來,我們創建了一個CustomAttribute對象,并使用Attributes.Add()方法將其添加到了MyMethod方法上。
需要注意的是,Attributes.Add()方法返回的是一個AttributeCollection實例,該實例是只讀的,我們無法直接修改它。如果需要修改或刪除已添加的自定義屬性,需要使用反射機制來實現。