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

Menggunakan C# MongoDB LINQ dengan diskriminator

Saat bekerja dengan hierarki tipe polimorfik, variabel koleksi dan kueri LINQ Anda harus dimulai dari kelas dasar. Misalnya, untuk membaca kembali semua dokumen tipe A dari database, Anda akan menulis:

var collection = database.GetCollection<D>("mycol");
var query = collection.AsQueryable<D>().OfType<A>();
foreach (var a in query)
{
    // process document of type A
}

Untuk tujuan diagnostik, Anda dapat melihat kueri MongoDB asli yang sesuai menggunakan:

var json = ((MongoQueryable<A>)query).GetMongoQuery().ToJson();

Perhatikan bahwa Anda harus melemparkan kueri ke MongoQueryable (bukan MongoQueryable) karena panggilan OfType() mengubah tipe IQueryable.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Menemukan dua elemen dalam larik dokumen yang muncul dalam urutan tertentu

  2. Node, Mongoose:Hapus elemen json dari hasil kueri dengan delete

  3. Ulangi Koleksi Mongo dan perbarui bidang di setiap dokumen

  4. Bisakah saya dengan mudah mengembalikan semua bidang subdokumen sebagai bidang di dokumen tingkat atas menggunakan kerangka kerja agregasi?

  5. Pemisahan Data Sensitif dalam MongoDB dan NodeJS - referensi melalui kunci terenkripsi