C# 在超类列表中foreach继承(子类)对象
我有一个名为“ClassA”的超级类和两个子类“Class1”和“Class2” 我有一个包含“Class1”和“Class2”对象的列表,该列表的类型为“ClassA”C# 在超类列表中foreach继承(子类)对象,c#,.net,inheritance,C#,.net,Inheritance,我有一个名为“ClassA”的超级类和两个子类“Class1”和“Class2” 我有一个包含“Class1”和“Class2”对象的列表,该列表的类型为“ClassA” 我只想通过如下操作循环列表中的“Class1”对象 List<ClassA> AList = new List<ClassA>; AList.Add(new Class1()); AList.Add(new Class2()); foreach (Class1 c1 in AList) { /
我只想通过如下操作循环列表中的“Class1”对象
List<ClassA> AList = new List<ClassA>;
AList.Add(new Class1());
AList.Add(new Class2());
foreach (Class1 c1 in AList)
{
// Do Something
}
使用LINQ:
foreach (Class1 c1 in AList.OfType<Class1>()) { }
foreach(类型列表()中的c1类)
{
//做点什么
}
我必须使用.NET 2.0,不能使用LINQI必须使用.NET 2.0,不能使用LINQ
foreach (Class1 c1 in AList.OfType<Class1>()) { }
foreach (ClassA cA in AList) {
Class1 c1 = cA as Class1;
if (c1 != null) {
// do something
}
}
foreach(Class1 c1 in AList.OfType<Class1>())
{
//do something
}