我正在尝试通过ID查找集合中的文档。建议的大多数答案都使用与文档匹配的C#类。类似于here
var filter = Builders<Product>.Filter
.In(p => p.Id, productObjectIDs);
我没有相应的C#类,因此我正在使用BsonDocument
public async Task<IEnumerable<BsonDocument>> GetData(IEnumerable<int> documentIds)
{
var collection = _mongoDatabase.GetCollection<BsonDocument>("mycollection");
// how do set filter here
var filterBuilder = Builders<BsonDocument>.Filter.In<int>("???????", documentIds);
var projection = Builders<BsonDocument>.Projection
.Include("_id")
.Include("status")
.Include("units");
var result = await collection.Find(filterBuilder).Project<BsonDocument>(projection).ToListAsync().ConfigureAwait(false);
return result;
}
我不确定如何使用in
运算符设置过滤器?
答案 0 :(得分:0)
您可以尝试使用此过滤器:
var filter = new BsonDocument("_id", new BsonDocument("$in", new BsonArray(documetIds)));