【发布时间】:2022-10-20 18:49:52
【问题描述】:
我有这些课程
public class SubMenuItem : SubMenuVariant
{
public string SubMenuTitle { get; set; }
public LinkFieldType Link { get; set; }
public List<SubMenuSubItem> SubItems { get; set; }
}
public class SubMenuHighlightItem : SubMenuVariant
{
[JsonPropertyName(FieldNames.HighlightTitle)]
public string HighlightTitle { get; set; }
[JsonPropertyName(FieldNames.HighlightText)]
public string HighlightText { get; set; }
[JsonPropertyName(FieldNames.HighlightText)]
public Link HighLightLink { get; set; }
}
public class SubMenuVariant
{
}
我目前存储在List<SubMenuVariant> submenu
问题是尽管我无法访问不同菜单具有的各个属性,因为它们被强制转换为没有任何属性的 SubMenu Variant。
是否可以在同一个列表中存储不同的类类型?
【问题讨论】:
标签: c# asp.net inheritance casting