Ci sono tre modi in realtà:
1.Specificare il tipo che si desidera caricare direttamente in FindAs<>
var docs = _collection.FindAs<MyType>(_document);
2.Deserializzare il documento tramite BsonSerializer
:
BsonSerializer.Deserialize<MyType>(doc);
3.Mappa manualmente il documento bson sulla tua classe:
var myClass = new Mytype();
myClass.Name = bsonDoc["name"].AsString;
Per la maggior parte dei casi sei d'accordo con il primo approccio. Ma a volte, quando i tuoi documenti non sono strutturati, potresti aver bisogno di un terzo approccio.