How to update and upsert multiple documents in MongoDB using C# Drivers

后端 未结 6 1890
清酒与你
清酒与你 2020-12-10 12:37

I am using MongoDB 2, and I want to update multiple documents and upsert a value like processed:true into the collection. But MongoDB c# api only allows us to

6条回答
  •  北荒
    北荒 (楼主)
    2020-12-10 13:24

    After Mongo 2.6 you can do Bulk Updates/Upserts. Example below does bulk update using c# driver.

    MongoCollection collection = database.GetCollection(collectionName);
          var bulk = collection.InitializeUnorderedBulkOperation();
          foreach (FooDoc fooDoc in fooDocsList)
          {
            var update = new UpdateDocument { {fooDoc.ToBsonDocument() } };
            bulk.Find(Query.EQ("_id", fooDoc.Id)).Upsert().UpdateOne(update);
          }
          BulkWriteResult bwr =  bulk.Execute();
    

提交回复
热议问题