Enumerable.ThenBy(TSource, TKey) メソッド (IOrderedEnumerable(TSource), Func(TSource, TKey)) (System.Linq)
キーに従って、シーケンス内の後続の要素を昇順で配置します。
SQLでは、ORDER BYの2つ目以降の列の昇順指定に相当します。
ソースコード
using System; using System.Linq; namespace LinqSample { class Program { static void Main(string[] args) { Man[] mans = new Man[] { new Man() { Name = "suzuki taro", Age = 20 }, new Man() { Name = "sato taro", Age = 21 }, new Man() { Name = "sato taro", Age = 20 } }; // SQLの"ORDER BY Man.Name, Man.Age"に相当する。 foreach (Man man in mans.OrderBy(man => man.Name).ThenBy(man => man.Age)) { Console.WriteLine(man); } Console.ReadKey(); } } class Man { public string Name { get; set; } public int Age { get; set; } public override string ToString() { return string.Format("Name = {0}, Age = {1}", Name, Age); } } }