[c#]如何在 Windows Phone 8 字典值进行排序?

标签: windows C#
发布时间: 2013/12/8 6:21:16
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

DateTime 的字典和我想要的字典在按升序或降序顺序的值进行排序。能做到使用很长的过程,但我知道可能有一些内置的方法有没有要对它们进行排序。请建议的最短的方式,这些字典的值进行排序。

我使用的字典是

    Dictionary<string, DateTime> dict = new Dictionary<string, DateTime>();

解决方法 1:

你不能这样 * 字典中作为一本字典是无序 (或相反的顺序可以更改,和是实现细节)。虽然很容易与 LINQ,可以获得对的有序的序列:

var ordered = dict.OrderBy(pair => pair.Value); // To order by DateTime value

var ordered = dict.OrderBy(pair => pair.Key); // To order by String key

然后可以循环访问 ordered 不过你想要。使用 OrderByDescending 来征收而不是按升序降序顺序。

或者,如果要收集哪些维护自动排序,您可以使用 SortedList<,> SortedDictionary<,> 如果 (且仅当) 你想要作为排序依据的关键。我不相信有任何类似于字典集合在.NET 中的按进行排序。

赞助商