可以使用 limit 函数限制 MongoDB 查询的结果:
但是我正在创建一个 API,您可以通过发送原始
BsonDocument
来查询该 API,并且该 API 使用 MongoClient
来查找结果。
public async Task<string> Query(string database, string collection, string qry)
{
var db = Connection.Client.GetDatabase(database);
var col = db.GetCollection<BsonDocument>(collection);
var filter = BsonDocument.Parse(qry);
var result = await col.FindAsync(filter);
string json = "";
await result.ForEachAsync(b => json += toJson(b));
return json;
}
但是有没有办法限制
BsonDocument
本身的结果呢?可以加个滤镜吗?
IMongoCollectionExtensions.FindAsync<TDocument> Method (IMongoCollection<TDocument>, Expression<Func<TDocument, Boolean>>, FindOptions<TDocument, TDocument>, CancellationToken)
方法中,您可以为 FindOption
提供 Limit
属性 来限制返回文档的数量。
var result = await col.FindAsync(filter, new FindOptions<BsonDocument>
{
Limit = 100 // Number of document(s) to be returned
});