我已经对字典进行了如下排序:
var map = new SortedDictionary<string, List<Account>>();
我需要按值大小对其进行排序(因此 List>.Count)。 我该怎么做?
我按照这个论坛的建议尝试了:
List<KeyValuePair<string, List<Account>>> myList = map.ToList();
myList.Sort(delegate (KeyValuePair<string, List<Account>> pair1,
KeyValuePair<string, List<Account>> pair2)
{
return pair1.Value.Count.CompareTo(pair2.Value.Count);
}
);
但这没有用
虽然 show 方法应该可以工作(对我来说确实如此),但我建议在这里使用 LINQ:
List<KeyValuePair<string, List<Account>>> myList = map
.OrderBy(kvp => kvp.Value.Count) // OrderByDescending if higher counts needed first
.ToList();