私はLinqが初めてです。次のようなコードがあります。
public class Data
{
public Dictionary<string,int> WordFrequency;
}
List<Data> dataList;
私が欲しいのは、Data オブジェクトのリスト全体に対して結合された WordFrequency を実行する 1 つの集約された辞書です。ループを使用してこれを行う方法を知っています (リストを反復し、次に各辞書を反復します)、私の質問は、これの Linq 構文は何ですか? ありがとうございました。
編集: これが私の (テストされていない) ループ アプローチです。
public static Dictionary<string, int> Combine()
{
Dictionary<string, int> result;
foreach (Data data in DataList)
{
foreach (string key in data.WordFrequencies.Keys)
{
if(!result.ContainsKey(key))
result[key] = 0;
result[key] += data.WordFrequencies[key];
}
}
}