MongoDB:递增整数字段(C#)

时间:2012-04-24 12:23:46

标签: c# integer atomic increment mongodb

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

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

2 个答案:

答案 0 :(得分:2)

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

请参阅此处"Monog DB Atomic Operations"

答案 1 :(得分: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;