如何在不创建新列表的情况下将后代对象列表转换为父对象列表?

时间:2012-01-20 22:33:55

标签: c# .net list inheritance

  

可能重复:
  Casting a generic collection to base type

我有一个继承自A类的A类和B类。

在另一个类中,我有一个List,我想将它作为List返回,但是没有创建新的List,因为我想使用一个可观察的集合,并且需要两个列表相同。

有什么想法吗?感谢。

1 个答案:

答案 0 :(得分:0)

将其改为IEnumerable<>而不是List<>?那么您的属性可以返回BaseCollectionName.Select(a => (B)a),而您实际上不必创建新的列表?

否则,在没有制作新的List<A>对象的情况下,没有简单的方法将List<B>投射到List<>