MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Memorizzazione di un dizionario con valori polimorfici in mongoDB usando C#

Il conducente dovrebbe conoscere tutti i discriminatori per deserializzare qualsiasi classe senza errori. Ci sono due modi per farlo:

1. Registralo a livello globale durante l'avvio dell'app:

BsonClassMap.RegisterClassMap<Type1>();
BsonClassMap.RegisterClassMap<Type2>();

2. Oppure tramite BsonKnownTypes attributo:

[BsonKnownTypes(typeof(Type1), typeof(Type2)]
 public class BaseType
 {

 }

Se utilizzerai il numero 1 o il numero 2, la deserializzazione funzionerà correttamente.