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

Melewati informasi Jenis ke MongoDB sehingga dapat membatalkan serialisasi jenis antarmuka dengan benar?

Sebagai hasil dari MyClass menunjuk ke jenis antarmuka, yang kemudian dapat menampung Bson kelas mana pun yang mengimplementasikan antarmuka itu, kita harus memberi tahu MongoDB jenis kelas 'yang dapat di akhir (semua) antarmuka itu. Ia kemudian dapat menyimpulkan dari kelas-kelas yang ia ketahui tentang cara menghapus serial BsonDocuments tertentu berisi Bson kelas tersebut.

public interface IMyInterface
{
    String Name { get; set; }
}

public class MyIntImpl : IMyInterface
{
    public String Name { get; set; }
}

public class MyClass
{
    public IMyInterface IntRef { get; set; }

    public MyClass()
    {
        IntRef = new MyIntImpl();
    }
}

// When starting up MongoDB
private void RegisterClasses()
{
    BsonClassMap.RegisterClassMap<MyIntImpl>();
}

Dengan menambahkan kelas MyIntImpl ke BsonClassMap sekarang tahu cara deserialize Bson dari tipe kelas itu. Anda hanya perlu memastikan bahwa peta tetap diisi dengan kelas-kelas yang mengimplementasikan antarmuka yang mungkin Anda buat bersambung.

Beberapa tautan referensi:Tingkat tinggi ke rendah gambaran umum serialisasi C# MongoDB , postingan SO yang menguraikan solusinya.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB menjalankan total seperti agregasi catatan sebelumnya hingga munculnya nilai

  2. Mengurutkan hasil kueri geospasial mongodb secara efisien

  3. Bagaimana saya bisa mengurutkan nol yang terakhir dipesan di mongodb?

  4. CURSOR_NOT_FOUND - pekerjaan cron saya mulai mati di tengah

  5. Cara menganalisis penggunaan disk dari wadah Docker