1
我需要合并三个字典集合,如果密钥相同,我想增加值。与Linq-Union合并三个字典
Result is like
One - 5+5 =10
two - 10+20=30
three - 7
four - 2
five - 8
six - 2
Dictionary<string, int> d1 = new Dictionary<string, int>();
d1.Add("one", 5);
d1.Add("two", 10);
d1.Add("three", 7);
Dictionary<string, int> d2 = new Dictionary<string, int>();
d2.Add("four", 2);
d2.Add("two", 20);
d2.Add("five", 8);
Dictionary<string, int> d3 = new Dictionary<string, int>();
d3.Add("one", 5);
d3.Add("six", 2);
联合:忽略匹配的结果集。
var uQuery =(from a in d1 select a).Union(from from b in d2 select b).GroupBy(grp => grp.Key);