如果我有:
class A
{
public virtual string Owner { get; set; }
}
class B : A
{
public override string Owner { get; set; }
}
我如何确定类B
上的所有者属性是使用TypeDescriptor.GetProperties(type)
方法的重写属性?
基于@DaveShaw的评论和使用propertyInfo:
对类似问题的回答var property = TypeDescriptor.GetProperties(typeof(B)).Find("Owner", false).ComponentType.GetProperty("Owner");
var getMethod = property.GetGetMethod(false);
bool isOverride = getMethod.GetBaseDefinition() != getMethod;