C# GetCustomAttributes(true)是否不从类型父级返回属性?

C# GetCustomAttributes(true)是否不从类型父级返回属性?,c#,validation,reflection,C#,Validation,Reflection,我有以下(大大简化的)课程: 我有一些通过SalesCustomer属性循环的验证代码。每个属性都使用以下方法进行评估: var validators = property.GetCustomAttributes(typeof(ValidationAttribute), true); 问题是,当我查看SalesCustomer类型上的LastName属性时,所需属性没有返回,但当我查看Customer类型时,它确实可以正常工作。这是令人困惑的,因为GetCustomerAttribute()

我有以下(大大简化的)课程:

我有一些通过SalesCustomer属性循环的验证代码。每个属性都使用以下方法进行评估:

 var validators = property.GetCustomAttributes(typeof(ValidationAttribute), true);

问题是,当我查看SalesCustomer类型上的LastName属性时,所需属性没有返回,但当我查看Customer类型时,它确实可以正常工作。这是令人困惑的,因为GetCustomerAttribute()方法显式地需要一个布尔值来指示继承的属性将被返回。

我认为它将只返回来自覆盖的父成员的属性,而不返回隐藏的父成员


将基本属性
设置为虚拟属性
,子属性
覆盖属性

是否将
SalesCustomer
设置为属性的阴影?是否需要将
Customer
作为具体类型?我将使用
抽象字符串LastName
getter/setter创建
抽象类Customer
;用
RequiredAttribute
装饰…否。我确实有几个其他属性覆盖父类,但不是那些引起我问题的属性。不,我不能在这里抽象客户。在我的申请中都用到了。谢谢。运行了一些单元测试来验证这一点,似乎是这样的。
 var validators = property.GetCustomAttributes(typeof(ValidationAttribute), true);