Erweiterungsmethoden-Syntax vs. Abfragesyntax
Ich versuche herauszufinden, ob es einen guten Zeitpunkt gibt, Standard-Linq-Schlüsselwörter oder Linq-Erweiterungsmethoden mit Lambda-Ausdrücken zu verwenden. Sie scheinen dasselbe zu tun, sind nur unterschiedlich geschrieben. Ist es nur eine Frage des Stils?
var query = from p in Products
where p.Name.Contains("foo")
orderby c.Name
select p;
// or with extension methods:
var query = Products
.Where(p => p.Name.Contains("foo"))
.OrderBy(p => p.Name);
Sie sind sich sehr ähnlich, wobei das zweite Beispiel etwas knapper ist, aber vielleicht weniger aussagekräftig, wenn Sie nicht wissen, was das => tut.
Neben dem Schreiben von Kurzcode bietet die Verwendung der Erweiterungsmethoden weitere Vorteile im Gegensatz zur LINQ-Syntax?