C#でDictionaryの値によるソート
Dictionary<string, int> dic = new Dictionary<string, int>(); dic.Add("A", 2); dic.Add("B", 1); dic.Add("C", 3); //昇順 var vs1 = dic.OrderBy((x) => x.Value); foreach (var v in vs1) { Console.WriteLine(string.Format("{0}:{1}", v.Key, v.Value)); } //降順 var vs2 = dic.OrderByDescending((x) => x.Value); foreach (var v in vs2) { Console.WriteLine(string.Format("{0}:{1}", v.Key, v.Value)); }