Tho*_*mas 3 c# sorting mongodb
我想替换以下代码:
var R = Challenges.FindAll().SetSortOrder("UseCount").First();
var Q = Query.EQ("_id", R._id);
var U = Update.Inc("UseCount", 1);
Challenges.Update(Q, U);
return R;
Run Code Online (Sandbox Code Playgroud)
这是意图:
我在一个名为'UseCount'的数据库中有一个字段,我想找到值较低的记录.如果许多记录具有相同的值,我只想要第一个(它并不重要).
同时,我希望将"UseCount"字段增加一个.
我已经看过FindAndModify的例子,但它似乎与字段比较(即:"field"= value),而不是像我正在做的搜索.
处理这个问题的最佳/最有效方法是什么?
下面的代码(C#MongoDB.Driver 2.0)
var collection = database.GetCollection<BsonDocument>("product");
var filter = new BsonDocument();
var update = Builders<BsonDocument>.Update.Inc("UseCount", 1);
var sort = new FindOneAndUpdateOptions<BsonDocument>
{
Sort = Builders<BsonDocument>.Sort.Ascending("UseCount")
};
await collection.FindOneAndUpdateAsync(filter, update, sort);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3140 次 |
| 最近记录: |