LINQって、どうしてSQLのようにselectから始まらないんだろうと思ってましたが、
「究極のC#プログラミング」を読んでてなんとなく納得しました。
クエリ構文って結局は、「メソッド構文をわかりやすく表現したもの」なんですね。
クエリ構文で表現した以下のコードと
static void Main() { int[] array = {1, 2, 3, 4}; var query = from x in array where x % 2 == 0 select x; foreach (var n in query) Console.WriteLine(n); }
メソッド構文で表現した以下のコードは等価であると。
static void Main() { int[] array = {1, 2, 3, 4}; var query = array.Where(x => x%2 == 0).Select(y => y); foreach (var n in query) Console.WriteLine(n); }
var query = array.Where(x => x%2 == 0).Select(y => y); var query = from x in array where x % 2 == 0 select x;
両者を見てて、クエリ構文で最後にselectが来る理由が何となくわかったと…
まぁ、それだけですがw