无法从BsonType'Document'反序列化'List <object>'

时间:2018-06-28 09:44:42

标签: c# .net mongodb webforms

我已经在用于声明属性的类中声明了List<object>,并使用C#从mongodb中获取数据,例如:

public List<object> name {get;set;} 

但是会引发错误:

  

“无法从BsonType'文档'反序列化'列表'“

1 个答案:

答案 0 :(得分:0)

您的问题不清楚,希望此答案可以对您有所帮助。 在Mongo DB中,对于集合中的每个条目,都会有对象ID和字段。要导入这些数据,您需要声明一个具有相同mongo DB字段的类, 像

// using MongoDB.Bson;
public class ToDo
    {
        public ObjectId Id { get; set; }
        public long ID { get; set; }
        public string Title { get; set; }
        public string Status { get; set; }
    }

所以最终代码可以从数据库中获取所有数据,如下所示

           //  using MongoDB.Driver;
           //  using MongoDB.Bson;
             private static Object GetCollection()
              {
                IMongoClient  _client = new MongoClient();
                IMongoDatabase _database = _client.GetDatabase("<urDBname>");
                var _collection = _database.GetCollection<ToDo>("<urCOLLECTIONname>");
                var documents = _collection.Find(new BsonDocument()).ToListAsync().Result;
                return documents;
              }

此处文档将提供数据库集合中存在的文档列表。 确保您的Mongo服务器正常运行。