Ich habe ein Wörterbuch, in dem Elemente (zum Beispiel) stehen:
Und ich habe eine Liste:
Ich möchte aus meinem Wörterbuch alle Elemente entfernen, deren Schlüssel nicht in meiner Liste sind, und am Ende wird mein Wörterbuch:
Wie kann ich tun?
Es ist einfacher, ein neues Dictionary zu erstellen, das Elemente enthält, die sich in der Liste befinden:
%Vor%Wenn es wichtig ist, das vorhandene Wörterbuch zu ändern (z. B. ist es eine schreibgeschützte Eigenschaft einer Klasse)
%Vor% Beachten Sie den Aufruf von ToList () - es ist wichtig, die Liste der zu entfernenden Schlüssel zu materialisieren. Wenn Sie versuchen, den Code ohne die Materialisierung von keysToRemove
auszuführen, haben Sie wahrscheinlich eine Ausnahme, die etwas wie "Die Sammlung hat sich geändert" enthält.
Tags und Links c# list dictionary collections