sql >> Database teknologi >  >> NoSQL >> MongoDB

Hvordan kan jeg slette indlejret array-element i et mongodb-dokument med c#-driveren

Du kalder metoden Pull(string name, MongoDB.Bson.BsonValue value) og ifølge dokumenterne det

og du angiver { "Identifier", productId } som værdien. Jeg gætter på, at mongo ikke finder det nøjagtigt værdi.

Prøv at bruge den anden overbelastning af Pull med query-condition i stedet for nøjagtig værdi

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

OPDATERING

Siden du nævner Category enhed, så jeg kan foreslå at bruge lambda i stedet for Query.EQ :

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


  1. Hvordan kan jeg kombinere flere samlinger til én samling ved hjælp af $lookup mongodb eller nodejs mongodb?

  2. 3 måder at oprette et indeks på i MongoDB

  3. Memcache v/s redis for at opretholde vedvarende sessioner?

  4. Hvordan får jeg objekt-ID'et, efter at jeg har gemt et objekt i Mongoose?