私は
List<MyObject>
データベースから取得します。ただし、グループ化のために、MyObject のプロパティでキーを設定したいと思います。LINQ を使用してリストを次のものにキャストする最適な方法は何ですか。
Dictionary<long, List<MyObject>>
以下のものがあります:
myObjectList.ToDictionary(x => x.KeyedProperty)
しかし、次のように返されます:
Dictionary<long, MyObject>
ベストアンサー1
MyObject
インスタンスをグループ化してKeyedProperty
、そのグループ化を に入れたいようですねDictionary<long,List<MyObject>>
。そうであれば、次のことを試してください。
List<MyObject> list = ...;
var map = list
.GroupBy(x => x.KeyedProperty)
.ToDictionary(x => x.Key, x => x.ToList());