2008-09-05 2 views
0

Ich versuche, die richtigen Namen für diese 2 "Arten" von codierenden Ausdrücken in LINQ zu finden, so dass ich auf sie richtig verweisen kann. Ich möchte sagen, dass der erste "Fluent Style" heißt?Wie lauten die Namen für diese 2 LINQ-Ausdrücke?

var selectVar = arrayVar.Select((a,i) => new { Line = a }); 

var selectVar = 
    from s in arrayVar 
    select new { Line = s }; 

Antwort

1

die erste nicht einmal wirklich Linq, es ist ein Lambda-Ausdruck, mit einer Art invariant Objekt erstellt. (a) => neu {blah = b}

Die zweite ist eine linq-Abfrage, die eine on-the-fly-Klasse füllt, die eine Eigenschaft Line hat. Es gibt keinen hashrocket-Operator in diesem, also ist dieser einfach nur alt linq.

1

Der Name der zweiten Form ist "Abfrage-Comprehension-Syntax", die der Compiler in die erste Form übersetzt.