Il y a trois façons en fait :
1.Spécifiez le type que vous souhaitez charger directement dans FindAs<>
var docs = _collection.FindAs<MyType>(_document);
2.Désérialiser le document via BsonSerializer
:
BsonSerializer.Deserialize<MyType>(doc);
3.Mappez manuellement le document bson à votre classe :
var myClass = new Mytype();
myClass.Name = bsonDoc["name"].AsString;
Dans la plupart des cas, vous êtes d'accord avec la première approche. Mais parfois, lorsque vos documents ne sont pas structurés, vous pouvez avoir besoin d'une troisième approche.