IDictioary<TKey, TValue>.Values
プロパティがICollection<TValue>
ではなくタイプである理由に頭を悩ませようとしていIEnumerable<TValue>
ます。プロパティの .NET 実装はValues
、インターフェイス プロパティを明示的に実装し、値を追加または削除しようとすると例外をスローするValues
型としてプロパティを公開します。Dictionary<TKey, TValue>.ValueCollection
これは完全なハックのようです。ディクショナリの性質上、ディクショナリ内の値のコレクションを取得し、そこから値を追加/削除できる実装を作成することは理にかなっていますか?