假设下列假设的继承层次:
public interface IA
{
int ID { get; set; }
}
public interface IB : IA
{
string Name { get; set; }
}
利用反思并做出以下呼吁:
typeof(IB).GetProperties(BindingFlags.Public | BindingFlags.Instance)
只能产生接口 IB
的属性,即“ Name
”。
如果我们对以下代码进行类似的测试,
public abstract class A
{
public int ID { get; set; }
}
public class B : A
{
public string Name { get; set; }
}
调用 typeof(B).GetProperties(BindingFlags.Public | BindingFlags.Instance)
将返回“ ID
”和“ Name
”的 PropertyInfo
对象数组。
是否有一种简单的方法可以像第一个示例那样找到接口的继承层次结构中的所有属性?