gpt4 book ai didi

c# - 从抽象类型列表中获取特定类型的所有项目

转载 作者:行者123 更新时间:2023-12-05 09:23:58 25 4
gpt4 key购买 nike

我有一个 List<>包含不同类型对象的抽象对象。我正在尝试获取某种类型的所有项目并将这些项目设置为它们自己的 List<> .

这是行不通的-

//myAbstractItems is a List<myAbstractItem>
//typeAList inherents from myAbstractItem


var typeAList = ((List<itemTypeA>)myAbstractItems.Where(i => i.GetType() == typeof(itemTypeA)).ToList());

类型转换(List<itemTypeA>)似乎失败了。

最佳答案

使用 OfType extension method :

var typeAList = myAbstractItems.OfType<itemTypeA>().ToList();

从文档...

The OfType(IEnumerable) method returns only those elements in source that can be cast to type TResult.

关于c# - 从抽象类型列表中获取特定类型的所有项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17837367/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com