Sau đây sẽ cung cấp cho bạn một từ điển được sắp xếp dựa trên OrderedDictionary của bạn.
var normalOrderedDictionary= od.Cast<DictionaryEntry>()
.OrderBy(r=> r.Value)
.ToDictionary(c=> c.Key, d=> d.Value);
Có một điều mặc dù, ToDictionary
trở một từ điển thông thường, nhưng trật tự được duy trì trong từ điển cho việc tra cứu, càng sớm càng bất kỳ mục mới được đưa vào từ điển, họ trật tự có thể không được đảm bảo. Để tránh điều này, sử dụng SortedDictionary<TKey,TValue>
trong đó có một nhà xây dựng mà phải mất một từ điển thông thường như tham số
var sortedDictionary = new SortedDictionary<string, string>(normalOrderedDictionary);
(Hãy chắc chắn rằng để thay thế string
với các loại chính xác cho Key và giá trị trong dòng ở trên).
Output:
foreach (var entry in sortedDictionary)
Console.WriteLine("Key: {0} Value: {1}", entry.Key, entry.Value);
Key: a3 Value: 2
Key: a1 Value: 3
Key: a4 Value: 4
Key: a2 Value: 5
Cảm ơn Habib .. câu trả lời của bạn cũng đã hoạt động. Tôi chỉ không có quá nhiều điểm danh tiếng. –
OK cảm ơn ..Must nói stackoverflow chỉ đơn giản là đá .. !! –
@LalaTrivedi, bạn được chào đón – Habib