C# 如何在不创建新列表的情况下将子对象列表强制转换为父对象列表?
可能重复:C# 如何在不创建新列表的情况下将子对象列表强制转换为父对象列表?,c#,.net,list,inheritance,C#,.net,List,Inheritance,可能重复: 我有一个从类a继承的类a和类B 在另一个类中,我有一个列表,我希望将其作为列表返回,但不创建新列表,因为我希望使用一个可观察的集合,并且需要两个列表相同 有什么想法吗?谢谢。将其设置为IEnumerable而不是列表?然后您的属性可以返回BaseCollectionName。选择(a=>(B)a),您实际上不需要创建新列表吗 否则,如果不创建新的List对象,就无法将List转换为List;即使在4.0中,列表也是不变的。虽然,IEnumerable接口支持变化,但这会给您提供完整
我有一个从类a继承的类a和类B 在另一个类中,我有一个列表,我希望将其作为列表返回,但不创建新列表,因为我希望使用一个可观察的集合,并且需要两个列表相同
有什么想法吗?谢谢。将其设置为
IEnumerable
而不是列表
?然后您的属性可以返回BaseCollectionName。选择(a=>(B)a)
,您实际上不需要创建新列表吗
否则,如果不创建新的
List
对象,就无法将List
转换为List
;即使在4.0中,列表也是不变的。虽然,IEnumerable
接口支持变化,但这会给您提供完整的可观察功能。为什么您的答案中会有这么多问题?可能是因为我建议进行更深入的架构更改(并可能进行一些假设),出于某种原因,它们可能不会与OP的目标发生冲突。。。