1

如何以原子方式增加整数字段?FindAndModify 方法可以帮助吗?

例如文档包含字段count,我想在不检索完整文档并保存回来的情况下增加它。

4

2 回答 2

2

我确实发表了评论,但我找到了。$inc修饰符将在内部增加一个字段。完全原子地用于这个确切的目的。

请参阅此处“Monog DB 原子操作”

于 2012-04-24T12:30:39.160 回答
1

根据 Paystey 的回答,这里有一些使用 C# 驱动程序版本 2.1.0 的代码,以防其他人需要它:

var filter = Builders<BsonDocument>.Filter.Eq("_id", id);
var update = new BsonDocument("$inc", new BsonDocument { { "votes", 1 } });
var coll = db.GetCollection<BsonDocument>("collection");
var doc = coll.FindOneAndUpdateAsync(filter, update).Result;
于 2015-11-09T21:58:55.143 回答