We can use the OrderBy method to sort a SortedDictionary items.
The OrderBy method takes a key name that items will be sorted based on. The
following code snippet sorts a SortedDictionary items based on a Key.
AuthorList.OrderBy(key =>
key.Key)
The following code snippet sorts a SortedDictionary by keys
and by values.
public
void SortSortedDictionary()
{
// Create a SortedDictionary with
string key and Int16 value pair
SortedDictionary<string,
Int16> AuthorList =
new SortedDictionary<string,
Int16>();
AuthorList.Add("Mahesh
Chand", 35);
AuthorList.Add("Mike
Gold", 25);
AuthorList.Add("Praveen
Kumar", 29);
AuthorList.Add("Raj
Beniwal", 21);
AuthorList.Add("Dinesh
Beniwal", 84);
// Sorted by Key
Console.WriteLine("Sorted
by Key");
Console.WriteLine("=============");
foreach (KeyValuePair<string,
Int16> author in
AuthorList.OrderBy(key => key.Key))
{
Console.WriteLine("Key:
{0}, Value: {1}", author.Key, author.Value);
}
Console.WriteLine("=============");
// Sorted by Value
Console.WriteLine("Sorted
by Value");
Console.WriteLine("=============");
foreach (KeyValuePair<string,
Int16> author in
AuthorList.OrderBy(key => key.Value))
{
Console.WriteLine("Key:
{0}, Value: {1}", author.Key, author.Value);
}
}
Learn more:
Working with SortedDictionary using C#