sql >> Base de Datos >  >> NoSQL >> MongoDB

Almacenamiento de un diccionario con valores polimórficos en mongoDB usando C#

El controlador debe conocer todos los discriminadores para deserializar cualquier clase sin errores. Hay dos formas de hacerlo:

1. Regístrelo globalmente durante el inicio de la aplicación:

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

2. O a través del BsonKnownTypes atributo:

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

 }

Si utilizará el n.° 1 o el n.° 2, su deserialización funcionará correctamente.