MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Como desserializar um objeto BsonDocument de volta à classe


Existem três maneiras na verdade:

1.Especifique o tipo que deseja carregar diretamente em FindAs<>
var docs = _collection.FindAs<MyType>(_document);

2. Desserialize o documento via BsonSerializer :
BsonSerializer.Deserialize<MyType>(doc);

3.Mapeie o documento bson manualmente para sua turma:
var myClass = new Mytype();
myClass.Name = bsonDoc["name"].AsString;

Na maioria dos casos, você concorda com a primeira abordagem. Mas às vezes, quando seus documentos não estão estruturados, você pode precisar de uma terceira abordagem.