我有一份汽车清单。
有什么想法吗?
ICollection<Cars> Cars
我也有一个单一的汽车对象,并且我知道它在ICollection中,我该如何获取汽车在列表中的索引/位置?我需要将它添加到字符串列表中。
以下是我的进展:
var index = cars.Where(b=> b.Id == car.id).Single().iWantTheIndex
stringList.Add(index)
有什么想法吗?
var index = cars.Select((b, i) => new { car = b, index = i }).Single(b => b.car.Id == car.id).index;
- Blake ThingstadICollection
不一定有索引。 - Servycars
当前状态添加一个人为索引。系统不能保证同一“索引”在任何未来操作中都能匹配到同一对象。下一行代码可能会尝试基于该索引从cars
中获取同一对象(很可能使用.Skip()
和.First()
之类的方法),但实际上得到的却是完全不同的对象。 - DavidIList<T>
),而不是没有要求的接口(ICollection<T>
)。使用一个契约并没有明确规定所需的所有内容非常不好,只是希望任何使用该代码的人知道他们实际上应该提供特定类型的实现是不可取的。 - Servy