我在这里创建了一个名为 AAtribute 的自定义属性,例如一个名为 B 的类,其中一个或多个方法使用该属性。是否有可能在不遍历整个程序集并查看所有已定义方法的属性的情况下获取将属性(在本例中为 BMethod1)作为其属性(其中一个)的方法的 MethodInfo?它们是其他 AttributeTargets(参数/类型/属性/...)的模拟方式吗?我不想要使用该类型属性的所有方法的数组,而只想要具有此 Attirbute-object 的方法。我想用它对方法施加额外的约束(返回类型、参数、名称、其他属性使用,...)。
[AttributeUsage(AttributeTargets.Method)]
public class AAtribute : Attribute {
//some fields and properties
public AAtribute () {//perhaps with some parameters
//some operations
MethodInfo mi;//acces to the MethodInfo with this Attribute
//as an Attribute (the question)
//some operations with the MethodInfo
}
//some methods
}
public class B {
//some fields, properties and constructors
[A]
public void BMethod1 () {
//some operations
}
//other methods
}