Есть много, много темы о способах получить «первый» элемент от Dictionary
и различные ответы на вопрос, почему такая вещь не очень хорошая идея, потому что нет внутреннего заказа. Но мой - SortedDictionary
, поэтому эти аргументы не применяются. Тем не менее, я не могу найти способ получить N-й элемент от SortedDictionary
легче, чем Dictionary
.Первый элемент в сортированном документе?
Вот мой SD:
FRs As SortedDictionary(Of DateTime, ScheduleItem)
Я вижу несколько намеков, что я должен быть в состоянии сделать:
If FRs.Count = 1 Then
FirstFR = FRs.Keys(0)
Но это не действует в моем коде - это не говорит, что это не имеет по умолчанию и не может быть проиндексирован. .First
и другие варианты отображаются в LINQ, к которым я не могу настроить таргетинг. Так есть ли простой способ получить к нему доступ таким образом?
Примечание: любое предлагаемое решение не должно использовать LINQ, который не существует на многих платформах, отличных от Wintel.
Хорошо спасибо Тиму. Опять другой «что они думали». На самом деле, действительно нет причин, по которым они не могли бы сделать это, если есть дефолт? –
@MauryMarkowitz: посмотрите на мою часть _update_. –
Это не работает в моем коде, я получаю сообщение об отсутствии значения по умолчанию или индекса. Если быть точным: «Public Overloads ReadOnly Ключи свойств как SortedDictionary (Of Date, ScheduleItem) .KeyCollection» не имеет параметров, и его тип возврата не может быть проиндексирован –