【发布时间】:2010-08-27 12:38:58
【问题描述】:
这对某些人来说可能是一个基本问题,但它会影响我如何设计我的程序。
我有一个 A 类型的集合:
IEnumerable<A> myCollection;
我正在根据 2 个不同的标准过滤我的收藏:
IEnumerable<A> subCollection1 = myCollection.Where(x => x.Count > 10);
etc.
现在,我知道 .Where 表达式将返回 IEnumerable 的新实例,但新集合是否包含对“myCollection”引用的 A 类型实例的相同引用,或者是否创建了 A 类型的新副本?如果创建了“A”类型的新实例,有没有办法说“subCollection1”引用了与“myCollection”引用相同的 A 实例?
编辑:添加进一步说明。
我正在寻找一种方法,以便当我对“subCollection1”中的“A”实例进行更改时,它也会针对“myCollection”进行修改。
【问题讨论】: