MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Dapatkan dan Tambah/Perbarui dokumen MongoDB tertanam/bersarang bertingkat menggunakan C#

Sesuai dokumentasi :

Jadi gunakan -1 bukan jalan ke depan di sini. Pendekatan yang harus Anda lakukan adalah operator filter posisi $ .

Tidak ada representasi yang diketik dengan kuat di C# sehingga kode Anda dapat terlihat seperti di bawah ini:

var filter = Builders<Channel>.Filter.Eq(x => x.Id, "5e4606e6ae7b090688671416");

var like = new Like() {Name = "new like", Id = "1"};
var episodeId = "5e46071d385a672b0cea0f86";
var trackId = "5e460dbe2bc5e70c9cfeac21";

var update = Builders<Channel>.Update.Push("Episodes.$[e].Tracks.$[t].Likes", like);

var arrayFilters = new List<ArrayFilterDefinition>();
ArrayFilterDefinition<BsonDocument> episodesFilter = new BsonDocument("e._id", new BsonDocument("$eq", episodeId));
ArrayFilterDefinition<BsonDocument> tracksFilter = new BsonDocument("t._id", new BsonDocument("$eq", trackId));
arrayFilters.Add(episodesFilter);
arrayFilters.Add(tracksFilter);

var updateOptions = new UpdateOptions { ArrayFilters = arrayFilters };

var result = mongoDBCollection.UpdateOne(filter, update, updateOptions);



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Jalankan migrasi database (mongodb) dengan node.js

  2. Cara memotong angka menjadi 3 desimal

  3. Bersantai lalu Agregasi grup di MongoDB C #

  4. MongoDB:Performa Pengurangan Peta yang Mengerikan

  5. urutan byte tidak valid dalam US-ASCII (Ruby 1.9 + rails 2.3.8 + mongodb + mongo_mapper)