可能重复:
如何从自定义属性中确定附加类型?
我有这个自定义类属性:
[AttributeUsage(AttributeTargets.Class)]
public class ConfigurableClass : Attribute
{
public Type Control { get; private set; }
public bool IsSingleton { get; private set; }
public string Name { get; private set; }
public ConfigurableClass(bool isSingleton) : this(null, isSingleton)
{
}
public ConfigurableClass(Type control, bool isSingleton)
{
Control = control;
this.IsSingleton = isSingleton;
this.Name = ""; //set name to typename of the attached class here?
}
public ConfigurableClass(Type control, bool isSingleton, string name) : this(control, isSingleton)
{
this.Name = name;
}
}
请注意其中包含注释的行。是否可以获取该类属性所附加的类的类型?
恐怕这是不可能的,但从类中读取属性的代码会知道它是从哪个类中读取的。因此,无论你需要对这个类名做什么,都应该在那里完成。