gpt4 book ai didi

c# - IList 到 IList

转载 作者:可可西里 更新时间:2023-11-01 09:17:27 25 4
gpt4 key购买 nike

我有几个类:

class Vehicle
{
}

class Car : Vehicle
{
}

我有一个派生类的列表: IList<Car> cars;

我想将列表转换为其基类,并尝试过: IList<Vehicle> baseList = cars as IList<Vehicle>;

但我总是得到 null .还有

cars is IList<Vehicle> evaluates to be false.

当然,如果我执行以下操作,我可以将项目添加到列表中:

List<Vehicle> test = new List<Vehicle> ();

foreach ( Car car in cars )
{
test.Add(car);
}

我得到了我的 list ,但我知道必须有更好的方法。有什么想法吗?

最佳答案

使用IEnumerable <T> .Cast :

IList<Vehicle> vehicles = cars.Cast<Vehicle>().ToList();

或者,您可以避免转换为列表,具体取决于您希望如何处理源汽车列表。

关于c# - IList<Type> 到 IList<BaseType>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1457265/

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