MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Jak zarejestrowaćClassMap dla wszystkich klas w przestrzeni nazw dla MongoDb?

Nie musisz pisać BsonClassMap.RegisterClassMap<MyClass>(); , ponieważ wszystkie klasy będą domyślnie mapowane automatycznie.

Powinieneś użyć RegisterClassMap kiedy potrzebujesz niestandardowej serializacji:

 BsonClassMap.RegisterClassMap<MyClass>(cm => {
        cm.AutoMap();
        cm.SetIdMember(cm.GetMemberMap(c => c.SomeProperty));
    });

Możesz także użyć atrybutów do zarządzania serializacją (dla mnie wygląda to bardziej natywnie):

[BsonId] // mark property as _id
[BsonElement("SomeAnotherName", Order = 1)] //set property name , order
[BsonIgnoreExtraElements] // ignore extra elements during deserialization
[BsonIgnore] // ignore property on insert

Możesz także tworzyć globalne reguły używane podczas automatycznego mapowania, takie jak ta:

var myConventions = new ConventionProfile();
myConventions.SetIdMemberConvention(new NoDefaultPropertyIdConvention());
BsonClassMap.RegisterConventions(myConventions, t => true);

Do zarządzania procesem serializacji używam tylko atrybutów i konwencji.

Mam nadzieję, że ta pomoc.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Czy można spłaszczyć zapytanie wynikowe MongoDB?

  2. Prosta strona logowania w nodejs przy użyciu ekspresu i paszportu z mongodb

  3. Czy są jakieś dobre aplikacje do zarządzania bazami danych dla komputerów Mac dla MongoDB? Podobny do Sequel Pro?

  4. Pobierz wartość z MongoDB według jej nazwy klucza

  5. MongoDB GridFS - Czy to nazwa pliku czy nazwa pliku?