|
1
1
|
![]() |
2
3
问题不在于您传递的是派生类而不是基类;这是允许的。问题是,您传递的是派生类项的可变集合,这是不允许的。
幸运的是,您没有将车辆列表视为完整的列表:您只使用其中的一个方面,即它被枚举的能力。因此,您可以更换
请注意,使用LINQ在不使用循环的情况下生成所需的结果。 |
![]() |
3
0
只需改变你的功能
如果这不可能,则在将列表传递给方法时,可以将其转换为适当的类型:
关于协方差的更多信息: https://docs.microsoft.com/en-us/dotnet/standard/generics/covariance-and-contravariance |
![]() |
4
0
您可以转换列表或使用LINQ对其进行强制转换。看看: this 你可以这样做:
或:
|
![]() |
Rational Redneck · Java结构化方法链接 2 年前 |
![]() |
KianQ · 如何从数组生成SQL Update语句 2 年前 |
![]() |
AJA SMBAT · 我在获取列表而不是绑定方法时遇到问题 2 年前 |
![]() |
dsdsds sdsds · .pop()从原始列表中删除元素[重复] 3 年前 |
![]() |
MatÄj VondráÄek · 如何在c#方法中传递类型? 3 年前 |
![]() |
AISAN · 找不到令人兴奋的符号?[重复] 3 年前 |