有没有办法在同一枚举上运行的方法中引用源枚举?
例如,这段代码重复了原来的可枚举范围 1-6:
IEnumerable<int> result = Enumerable.Range(1, 6)
.Where(a => Enumerable.Range(1, 6).Count() % 2 == 0);
我想知道是否有一种更清洁的方法可以通过重复原始枚举来生成它,例如:
IEnumerable<int> result = Enumerable.Range(1, 6)
.Where(a => [source reference].Count() % 2 == 0);
是的,我知道以下是一个解决方案......但是有没有办法直接引用内存中的可枚举,如上所示?
IEnumerable<int> source = Enumerable.Range(1, 6);
IEnumerable<int> result = source.Where(a => source.Count() % 2 == 0);
我不是在寻找上述代码行的具体答案;他们只是展示我想知道的一个例子。