MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

MongoDB C#:Update.pullAll entfernt keine Elemente

Für $pullAll Um zu funktionieren, müssen Sie das gesamte Objekt genau abgleichen und können nicht nur ein Feld verwenden (selbst wenn es _id heißt).

Sie müssten also auch den Namen in den Update-Befehl aufnehmen (und die Felder müssen auch in der gleichen Reihenfolge sein).

Der Befehl, den Sie wirklich verwenden möchten, ist $pull , was das tut, was Sie hier brauchen, d. h. übereinstimmende Filterkriterien:

Obwohl es "ohne alle ziehen" heißt, zieht es alle passenden Elemente , nicht nur einer. Das "all" bedeutet nur, dass Sie einen Filter haben (wobei pullAll mehrere Elemente hat, die übereinstimmen müssen).