C# 3.0 - LINQ to Objects 複数フィールド抽出
複数フィールドを取得する場合は、selectに匿名型を指定します
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Program { class Program { static void Main(string[] args) { var persons = new[] { new { ID = 0, Age = 22, Name = "Akira" }, new { ID = 1, Age = 38, Name = "Bob" }, new { ID = 2, Age = 13, Name = "Millia" } }; // 18歳以上の人の年齢と名前を抽出 var query = from person in persons where person.Age >= 18 select new { person.Age, person.Name }; foreach (var person in query) { Console.WriteLine("年齢:{0}, 名前:{1}", person.Age, person.Name); } } } }
selectに指定する匿名型のプロパティは、検索元クラスのプロパティ名と同じものでなければならない