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.