Переопределение словаря <K, V> .KeyCollection - PullRequest
3 голосов
/ 21 ноября 2011

Я пытаюсь унаследовать от Dictionary<K,V>, но моя проблема в том, что, когда Dictionary.Keys запрашиваются, я хочу переопределить их.(то есть KeyCollection) словаря.

Как это можно решить?

спасибо

1 Ответ

7 голосов
/ 21 ноября 2011
  • Инкапсуляция Dictionary<K,V>

и

  • Реализация IDictionary<K,V>.

или

public new YourType Keys
{
    get
    {
        return yourVersion;
    }
}

Примечание:

  • IDictionary<K,V>.Keys имеет тип ICollection<Key>

  • Dictionary<K,V>.Keys имеет тип Dictionary<K, V>.KeyCollection, но помечен как sealed, поэтому вы не сможете его унаследовать, поэтому вариант 1 представляется более реалистичным.

...