酢ろぐ!

カレーが嫌いなスマートフォンアプリプログラマのブログ。

WindowsストアアプリでLINQを使って日付のコレクションをソートする

LINQを使ってソートします。

日付を昇順でソートする

var srouce = new [] { 
    DateTime.Now, DateTime.MinValue, DateTime.MaxValue
};

// 日付をソートする
var dates = srouce.OrderBy(d => d.Ticks);
foreach (var date in dates)
{
    System.Diagnostics.Debug.WriteLine(date);                
}

出力:
0001/01/01 0:00:00
2014/03/29 15:15:15
9999/12/31 23:59:59

降順に変えたい場合は、OrderByメソッドの代わりにOrderByDescendingメソッドの方を使用します。

日付を降順でソートする

var srouce = new [] { 
    DateTime.Now, DateTime.MinValue, DateTime.MaxValue
};

// 日付をソートする
var dates = srouce.OrderByDescending(d => d.Ticks);
foreach (var date in dates)
{
    System.Diagnostics.Debug.WriteLine(date);                
}

出力:
9999/12/31 23:59:59
2014/03/29 15:17:14
0001/01/01 0:00:00