这不是作业;) 我需要A)优化以下代码(在TODO和~TODO之间)和B)将其转换为[P] Linq。需要更好的可读性。分别为A)和B)提供答案可能是有意义的。谢谢!
lock (Status.LockObj)
{
// TODO: find a better way to merge these dictionaries
foreach (KeyValuePair<Guid, Message> sInstance in newSInstanceDictionary)
{
this.sInstanceDictionary.Add(sInstance.Key, sInstance.Value);
}
foreach (KeyValuePair<Guid, Message> sOperation in newSOperationDictionary)
{
this.sOperationDictionary.Add(sOperation.Key, sOperation.Value);
}
// ~TODO
}
P.S。看看我的另一个赏金问题。
答案 0 :(得分:1)
查看Union
运算符:
return newSInstanceDictionary.Union(newSOperationDictionary).ToDictionary(x => x.Key, y => y.Value);
答案 1 :(得分:1)
虽然您可以制作自己的扩展方法,但没有LINQ方法可以帮助您。
如果在此代码运行之前字典为空,则可以调用ToDictionary
。