Sollte ich beim Schreiben einer LINQ-Abfrage mit mehreren "und" -Bedingungen eine einzelne where
Klausel &&
oder mehrere where
Klauseln schreiben , eine für jede Bedingung?
static void Main(string[] args)
{
var ints = new List<int>(Enumerable.Range(-10, 20));
var positiveEvensA = from i in ints
where (i > 0) && ((i % 2) == 0)
select i;
var positiveEvensB = from i in ints
where i > 0
where (i % 2) == 0
select i;
System.Diagnostics.Debug.Assert(positiveEvensA.Count() ==
positiveEvensB.Count());
}
Gibt es einen anderen Unterschied als die persönlichen Vorlieben oder den Codierungsstil (lange Zeilen, Lesbarkeit usw.) zwischen positiveEvensA und positiveEvensB ?
Ein möglicher Unterschied besteht darin, dass verschiedene LINQ-Anbieter möglicherweise besser mit mehreren where
s umgehen können als mit einem komplexeren Ausdruck. Ist das wahr?