使用.Net Driver 2.0查询Mongo中的非BsonDocument对象

时间:2015-08-20 00:09:21

标签: mongodb mongodb-.net-driver

如何使用2.0驱动程序从Mongo数据库中对POCO对象进行基本查询?这似乎是一个基本问题,但Mongo网站上的所有docs都只谈论使用BsonDocument。有一个page讨论将BsonDocuments映射到标准C#类,但该页面没有显示如何自动反序列化为BSONDocument以外的类的对象的查询。我想做这样的事情:

列表与LT; MyClass的> documents = collection.Find< MyClass>()。ToListAsync();

1 个答案:

答案 0 :(得分:1)

您可以使用构建器创建过滤器来搜索对象。构建器/过滤器可在MongoDB.Driver和MongoDB.Driver.Linq命名空间中找到

例如:

// Query by ID (ensure it's an object id)
SomeClass result = await _collection.Find(Builders<SomeClass>.Filter.Eq(i => i.Id, id)).FirstOrDefaultAsync();
return result;

此页面上还有一些关于构建器和定义的好信息:http://mongodb.github.io/mongo-csharp-driver/2.0/reference/driver/definitions/