属性取决于其他属性

时间:2018-08-06 03:27:04

标签: c#

我有一个依赖于另一个属性的属性,即除非存在另一个属性,否则它不会起作用。每当将该属性添加到类中时,是否可以通过某种方式添加其他属性?

例如,有一个Decorator属性

public class Decorator : Attribute {
    public void draw(){}
}

public class Field : Attribute {
     public void FunctionThatIsCallingAllDecorators(){
         foreach(var attribute in GetAllDrawers()){
             attribute.draw();
         }
     }
     ...
}

这里的decorator属性仅在该类还具有field属性的情况下才有用,所以我想要的是任何一个具有decorator属性的类也都具有field属性。

1 个答案:

答案 0 :(得分:1)

请在Decorator类中创建构造函数。 创建一个“字段”变量,并始终在Decorator的构造函数中实例化。

您可以使用属性公开此“字段”变量。