Вам нужно постоянно сортировать свою коллекцию? При получении пар вам нужно, чтобы они всегда были отсортированы, или это только несколько раз (может быть, просто для представления)? Насколько большой вы ожидаете, что ваша коллекция будет? Есть много факторов, которые могут помочь вам решить, какой метод использовать.
Если вам нужно, чтобы коллекция сортировалась постоянно, даже если вы вставляете или удаляете элементы, и скорость вставки не является проблемой, возможно, вам следует реализовать какой-то SortedObservableCollection
, например, упомянутый @Gerrie Schenck, или проверить эта реализация .
Если вам нужна ваша коллекция, отсортированная всего несколько раз, используйте:
my_collection.OrderBy(p => p.Key);
Это займет некоторое время для сортировки коллекции, но даже в этом случае это может быть лучшим решением в зависимости от того, что вы делаете с ней.