我有一个List<string> AllowedList
和一个Dictionary<string,List<string>> MyDictionary
。
对于字典中的每个键,我想检查它是否在AllowedList
上,如果不是,则删除字典中的键和值。
我直觉地尝试了这个方法,似乎是我想要的:
foreach (string key in MyDictionary.Keys)
{
if (!AllowedList.Contains(key)) MyDictionary.Remove(key);
}
然而,我遇到了一个InvalidOperationException
:
集合已被修改;枚举操作可能无法执行。
我相信可能有简单的方法可以解决这个问题,但我并没有立刻看出来。
var keys = MyDictionary.Keys;
- farfareast