我正在尝试实现$ maxTimeMS,而我正在尝试从C#MongoDB获取我的过滤器的计数。我无法理解这样做。有人可以帮我吗?。
我的C#代码:
var doc = MongoDB.Bson.Serialization.BsonSerializer.Deserialize<BsonDocument>(jsonQuery);
var query = new QueryDocument(doc);
long Count = base.Collection.Count(query);
我正在尝试实际执行的Mongo Shell命令
db.MyCollection.find({ "$query": {"Age" : 101}, "$maxTimeMS": 100 } )
但是在我的C#Mongo中我使用Count Method来获取计数而不使用find方法,我需要的是如何在执行计数时在C#查询中设置$ maxTimeMS?
答案 0 :(得分:1)
好CountOptions
与FindOptions
基本相同,所以你可以这样做:
var options = new CountOptions
{
MaxTime = TimeSpan.FromSeconds(3)
};
long Count = base.Collection.Count(query,options);
甚至只是:
var options = new FindOptions
{
MaxTime = TimeSpan.FromSeconds(3)
};
long Count = base.Collection.Find(query,options).Count();