Допустим, у меня есть два класса, у базового класса есть собственный атрибут:
[MyAttribute]
public class BaseModel
{
public string Id { get; set; }
public string Name { get; set; }
}
public class InheritedModel : BaseModel
{
public string CompanyName { get; set; }
public int Amount { get; set; }
}
Когда я работаю с унаследованным классом, как
// member.DeclaringType is InheritedModel
if (member.DeclaringType.GetCustomAttributes(typeof(MyAttribute)).Any())
{
// returns true
}
Я ожидаю, что это должно быть false
, поскольку InheritedModel
не имеет атрибута MyAttribute
напрямую.
Это правильное поведение? Как я могу разделить родителей и наследников в вышеуказанном состоянии?