如果我有一个像这样的集合
List<SomeAbstractBaseType> someList = new List<SomeAbstractBaseType>();
并且我向该集合添加了两种不同的子类型(即,这两种子类型继承自 SomeAbstractBaseType),如下所示:
someList.Add(someChildOfType1);
someList.Add(someChildOfType2);
someList.Add(someOtherChildOfType1);
someList.Add(someOtherChildOfType2);
假设我想查询 someChildOfType1 的所有元素。我该怎么做 我已经尝试了以下方法(无法编译,可以从子类型转换为父类型)
List<ChildType1> temp = someList.Where(x => x.GetType() == typeof(ChildType1)).ToList();
有什么想法可以做到这一点吗?
请您参考如下方法:
List<ChildType1> temp = someList.OfType<ChildType1>().ToList();
