OrderedDictionary
- это то, что вам нужно, если вам нужен как ключ, так и последовательный доступ к элементам ... это просто комбинация хэш-таблицы и списка.Он предоставляет средства для доступа к элементам в нем либо по индексу вставки, либо по ключу.Это единственная коллекция в .NET, которая делает это.К сожалению, он не является универсальным.
Если OrderedDictionary
не удовлетворяет вашим потребностям исключительно потому, что он не является универсальным - тогда вы можете использовать версию, которая предоставляет общий эквивалент .Если есть другие причины, по которым он не работает, обновите ваше сообщение, и мы сможем найти лучший вариант.
Хотя вы, конечно, можете создать свой собственный List<KeyValuePair<string,string>>
, вы потеряете возможность поиска поключ эффективно.Теперь вы, конечно, можете свернуть свою собственную реализацию упорядоченного доктрины, которая объединила список / диктат ... но пост, на который я ссылался, уже делает это.