sql >> Databasteknik >  >> NoSQL >> MongoDB

Hur kan jag ta bort kapslade arrayelement i ett mongodb-dokument med c#-drivrutinen

Du anropar metoden Pull(string name, MongoDB.Bson.BsonValue value) och enligt dokumenten det

och du anger { "Identifier", productId } som värdet. Jag antar att mongon inte hittar det exakt värde.

Försök att använda den andra överbelastningen av Pull med query-condition istället för exakt värde

var update = Update.Pull("Products", Query.EQ("Identifier", productId));

UPPDATERA

Eftersom du nämner Category så jag kan föreslå att du använder lambda istället för Query.EQ :

var pull = Update<Category>.Pull(x => x.Products, builder =>
builder.Where(q => q.Identifier == productId));


  1. django admin filter och mongodb:Fångade DatabaseError under rendering:Denna fråga stöds inte av databasen

  2. Få värden som array av element efter $lookup

  3. Hur skulle jag kunna skriva aggregering utan att överskrida den maximala dokumentstorleken?

  4. mongodb $addToSet till ett icke-arrayfält vid uppdatering vid upsert