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

Menggunakan $addFields di Driver MongoDB untuk C#

Sebuah BsonDocument dapat diubah menjadi IPipelineStageDefinition. Untuk mendapatkan BsonDocument yang Anda inginkan, Anda hanya ingin:

var addFieldsDefinitionDoc = BsonDocument.Parse(addFieldsDefinition.ToString());
var stageElement = new BsonElement("$addFields", addFieldsDefinitionDoc);
var stage = new BsonDocument(stageElement)

Kemudian untuk menambahkannya cukup gunakan:

aggregate = aggregate.AppendStage(stage);

Saya tidak yakin apakah aggregate.Stages.Add akan melakukan hal yang sama atau tidak tetapi saya berpikir AppendStage mungkin adalah cara yang lebih baik untuk melakukannya (walaupun saya belum menemukan dokumentasi yang memberi tahu saya apa cara yang benar untuk melakukan banyak hal sehingga ini ditemukan melalui coba-coba dan memeriksa sumbernya untuk melihat cara kerjanya)...

Anda bahkan dapat menambahkan tahapan tambahan menggunakan fungsi pembuat tahapan normal seperti:

aggregate = aggregate.Project(projectionDefinition);

atau bahkan

aggregate = aggregate
    .AppendStage(stage)
    .Project(projectionDefinition);



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Cara mendapatkan ukuran dalam byte dokumen bson

  2. Pencarian rekursif pada koleksi di MongoDB

  3. MongoDB C#:Update.pullAll tidak menghapus item

  4. Proyek dengan Pertandingan secara agregat tidak berfungsi di mongodb

  5. Menggunakan Joda-Time untuk membentuk ISODate yang benar untuk sisipan Mongo