我从1.9迁移到2.2,并使用reading the documentation感到惊讶,因为在操作中不允许使用选项,因此在批量操作期间再也无法插入。

bulkOps.Add(new UpdateOneModel<BsonDocument>(filter, update));
collection.BulkWrite(bulkOps);

应该
options.isUpsert = true;
bulkOps.Add(new UpdateOneModel<BsonDocument>(filter, update, options));
collection.BulkWrite(bulkOps);

这项工作正在进行中,有意进行还是我遗漏了一些东西?谢谢。

最佳答案

IsUpsert UpdateOneModel 属性设置为true可以将更新变成upsert。

var upsertOne = new UpdateOneModel<BsonDocument>(filter, update) { IsUpsert = true };
bulkOps.Add(upsertOne);
collection.BulkWrite(bulkOps);

关于c# - C#mongodb driver 2.0-如何在批量操作中进行upsert?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35687470/

10-09 20:36