私はDictionary<string,int>
それにいくつかの値を持つ を持っています。例えば:
- "あ", 600
- "b"、550
- "c"、400
このリストをフィルタリングして、500 を超える値を維持したいと考えています。C# はあまり使用せず、LINQ も使用したことがありません。これは学ぶ良い機会かもしれないと思いました。だから、私は次のことを試しました:
Dictionary<string,int> someDictionary = new Dictionary();
// Code to populate someDictionary goes here
someDictionary = (Dictionary<string,int>) someDictionary.Where(pair => pair.Value > 500);
これにより、InvalidCastException がスローされます。
タイプ 'WhereEnumerableIterator`1[System.Collections.Generic.KeyValuePair`2[System.String,System.Int32]]' のオブジェクトをタイプ 'System.Collections.Generic.Dictionary`2[System.String,System. Int32]'.
いくつかのキャスト、呼び出しなどを試しました.ToDictionary()
。これを正しくキャストする方法や、構文を完全に正しくする方法がわからないようです。正しい方向に私を向けることができますか?お時間をいただきありがとうございます。