在这种情况下:
class MyClass
{
[MyAttribute("flag")]
public OtherClass Property {get; set;)
// etc.
}
OtherClass
中的代码是否可以在不了解MyClass
的情况下访问“标志”?
答案 0 :(得分:1)
不。因为OtherClass是完全独立的,并且不知道在哪里使用它。好吧,理论上-是的。加载所有类,遍历它们,找到所有引用,通过反射分析属性。根据大小和位置(在一个程序集中,在所有程序集中),这可能很慢,或者“该死,这真的很慢”,但是是的,您可以访问所有程序集,所有类并在其上使用反射。