Concatenate two Dictionaries
给了一些字典
1 2
| Dictionary <string, string> GroupNames = new Dictionary <string, string>();
Dictionary <string, string> AddedGroupNames = new Dictionary <string, string>(); |
我无法将它们合并为一个:
1
| GroupNames = GroupNames.Concat(AddedGroupNames); |
号
因为"无法隐式转换类型"。我相信(我的代码证明了我是真的)他们的类型是一样的——我忽略了什么?
- 假设GroupNames和AddedGroupNames之间不会发生关键碰撞,是否安全?
- 这里已经回答了这个问题:stackoverflow.com/questions/294138/&hellip;
我认为你把你的GroupNames定义为Dictionary,所以你需要像这样添加ToDictionary:
1 2
| GroupNames = GroupNames.Concat(AddedGroupNames)
.ToDictionary(x=>x.Key,x=>x.Value); |
请注意,两个原始字典将有不同的键,否则我们需要一些规则来正确合并它们。
- 太好了。与上面标记为原始答案的问题中给出的其他答案相比,这个解决方案要简单得多!
- 这是一个很好的解决方案,但它唯一的问题是重复的密钥。如果有重复的键,则会引发异常。