Припускаючи таку гіпотетичну ієрархію успадкування:
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)поверне масив PropertyInfoоб'єктів для " ID" та " Name".
Чи є простий спосіб знайти всі властивості в ієрархії успадкування для інтерфейсів, як у першому прикладі?