例如,我有两个课程:
Class A
{
string property1;
string property2;
}
Class B : A
{
string property3;
string property4;
....
}
所以 B 继承了类 A 的属性。他们坐在一个列表里,那是一本字典
Dictionary <string, List<A>> myDictionary = new Dictionary<string, List<A>>();
List<A> myList = new List<A>();
有一个字典,包含许多列表,都包含 A 类和 B 类对象的混合。循环时,我试图从 B 类对象中访问一些属性,我有一个 if 语句来查找它们,但程序仍然认为它们是 A 类类型,并在我尝试使用 property3 或 property4 时抛出错误。例如:
string key = string key in dictionary;
string index = object position in list;
myDictionary[key][index].property3.someMethod();
有没有办法告诉程序这是一个 B 类对象并允许使用属性 3 和 4?