== Why is this an issue? When a loop is filtering, selecting or aggregating, those functions can be handled with a clearer, more concise LINQ expression instead. === Noncompliant code example [source,csharp] ---- var result = new List(); foreach (var element in collection) // Noncompliant { if (condition(element)) { result.Add(element); } } foreach (var element in collection2) // Noncompliant { var someValue = element.Property; if (someValue != null) { result.Add(someValue); } } ---- === Compliant solution [source,csharp] ---- var result = new List(); foreach (var element in collection.Where(x => condition(x))) { result.Add(element); } foreach (var someValue in collection2.Select(x => x.Property).Where(y => y != null)) { result.Add(someValue); } ---- ifdef::env-github,rspecator-view[] ''' == Implementation Specification (visible only on this page) === Message * Use a LINQ expression in the loop declaration instead of this "xxx". ''' == Comments And Links (visible only on this page) === on 10 Jul 2015, 12:30:19 Ann Campbell wrote: \[~tamas.vajk] I tried to break the code samples into individual issues. Please help if I muffed it. === on 20 Jul 2015, 11:38:39 Tamas Vajk wrote: \[~ann.campbell.2] I removed a "probably" from the description. === on 20 Jul 2015, 14:36:13 Ann Campbell wrote: thanks [~tamas.vajk] endif::env-github,rspecator-view[]