List[B] を持つクラス C があり、各 B には Dictionary[A, double] があります。
現在私がやっているAあたりの最大(倍)を選択する必要があります:
Dictionary<A,double> rtn = new Dictionary<A,double>();
foreach (var B in C.Bs)
{
foreach (var kvpA in B.A_list.Where(a => !rtn.Keys.ToList().Contains(a)))
{
rtn.Add(kvpA.Key, kvpA.Value);
}
foreach(var kvpA in B.A_list.Where(a => rtn.Keys.Contains(a) && a.Value>rtn[a]))
{
rtn[kvpA.Key] = kvpA.Value;
}
}
return rtn;
ただし、これはかなり面倒なので、より良い linq クエリを作成しようとしていますが、構文がわかりません。助けはありますか?