Giả sử hệ thống phân cấp kế thừa giả định sau:
public interface IA
{
int ID { get; set; }
}
public interface IB : IA
{
string Name { get; set; }
}
Sử dụng phản xạ và thực hiện cuộc gọi sau:
typeof(IB).GetProperties(BindingFlags.Public | BindingFlags.Instance)
sẽ chỉ mang lại các thuộc tính của giao diện IB, là " Name".
Nếu chúng tôi thực hiện một thử nghiệm tương tự trên đoạn mã sau,
public abstract class A
{
public int ID { get; set; }
}
public class B : A
{
public string Name { get; set; }
}
lệnh gọi typeof(B).GetProperties(BindingFlags.Public | BindingFlags.Instance)sẽ trả về một mảng PropertyInfođối tượng cho " ID" và " Name".
Có cách nào dễ dàng để tìm tất cả các thuộc tính trong hệ thống phân cấp kế thừa cho các giao diện như trong ví dụ đầu tiên không?