私はList<string> AllowedList
とを持っていDictionary<string,List<string>> MyDictionary
ます。
ディクショナリの各キーについて、それが上にあるかどうかを確認したいAllowedList
、そうでない場合はキーと値をディクショナリから削除したい。
私は直感的にこれを試しましたが、これは私が望んでいたようです:
foreach (string key in MyDictionary.Keys)
{
if (!AllowedList.Contains(key)) MyDictionary.Remove(key);
}
しかし、私は遭遇しましたInvalidOperationException
:
コレクションが変更されました。列挙操作が実行されない場合があります。
おそらくこれを回避する簡単な方法があると確信していますが、すぐにはわかりません。