扩展继承的属性 C#

Extending inherited properties c#

我有一个 class 继承自基 class

还有两个 classes 具有这些原始 classes 的列表作为属性

我认为这两个新 classes 应该具有继承性,但似乎无法正常工作。

public class Attribute
{
    public string Name { get; set; }
    public string ShortName { get; set; }
    public bool Standard { get; set; }
}

public class BaseAttribute : Attribute
{
    public int Value { get; set; }
}

public class Profile
{
    public List<Attribute> AttributeList = new List<Attribute>
    {
        new Attribute {Name = "Hands", ShortName = "HA", Standard = true},
        new Attribute {Name = "Arms", ShortName = "AR", Standard = true},
    };
}

public class BaseProfile: Profile
{
    public List<BaseAttribute> AttributeList
    { get; set; }
}

我可以更改继承的 AttributeList 的类型以扩展它以在每个元素上包含值 属性 吗? 或者我根本不应该继承 BaseProfile 吗?

我已经尝试在这里(以及更广泛的互联网)上进行搜索,并且有许多有助于简单继承的答案,但我找不到 属性 类型的答案在继承过程中发生了变化。

class 属性的名称不正确,请为其选择另一个名称。 (这是一个标准的 .Net class,即使在 class 名称的末尾也最好避免使用它,因为以属性结尾意味着此 class 是从属性继承的。

    public class Attribute
    {
        public string Name { get; set; }
        public string ShortName { get; set; }
        public bool Standard { get; set; }
    }

    public class BaseAttribute : Attribute
    {
        public int Value { get; set; }
    }

    public class Profile<T> where T:Attribute,new ()
    {
        public List<T> AttributeList = new List<T>
        {
             new T {Name = "Hands", ShortName = "HA", Standard = true},
             new T {Name = "Arms", ShortName = "AR", Standard = true},
        };
    }

    public class BaseProfile : Profile<BaseAttribute>
    {

    }