2

私は IDictionary を持っています (一般的ではないので、ここでは を扱ってobjectいます)。特定のキー タイプ K と特定の値タイプ V に対応するその IDictionary の要素のみを取得したいと考えています。これを行うには何億もの方法がありますが、私が見つけた最もエレガントな方法は次のようです。

Dictionary<K, V> dict = myIDictionary.OfType<KeyValuePair<K, V>>();

これは正常にコンパイルされるため、このメソッドは辞書 (IEnumerable によって宣言されています) に対して機能すると想定していますが、結果の辞書は空ですが、それらの条件を満たす KVP が確実に存在します。明らかに、辞書の列挙で使用されるものであるため、それが期待される形式であると想定していKeyValuePair<K, V>ましたが、それは何か他のものですか? 足りないものはありますか?

4

2 に答える 2