How to deserialize a BsonDocument object back to class

后端 未结 1 1428
有刺的猬
有刺的猬 2020-12-23 11:30

How do I deserialize a BsonDocument object back to the class after getting it from the server?

QueryDocument _document = new QueryDocument(\"key\", \"value\"         


        
相关标签:
1条回答
  • 2020-12-23 12:06

    There are three ways actually:

    1.Specify type you want to load directly in FindAs<>

    var docs = _collection.FindAs<MyType>(_document);
    

    2.Deserialize document via BsonSerializer:

    BsonSerializer.Deserialize<MyType>(doc);
    

    3.Map bson document manually to your class:

    var myClass = new Mytype();
    myClass.Name = bsonDoc["name"].AsString;
    

    For most cases you are okay with first approach. But sometimes, when your documents is unstructured, you may need third approach.

    0 讨论(0)
提交回复
热议问题