Je sais que je peux mettre à jour atomiquement un document Mongo existant en définissant des champs spécifiques. Le code suivant fera:Mise à jour atomique de MongoDB via le document 'fusionner'
var update = MongoDB.Driver.Builders.Update.Set("InsideLegMeasurement", 32.4);
SafeModeResult result = personCollection.Update(query, update, UpdateFlags.Multi,SafeMode.True);
Cependant, puis-je mettre à jour plusieurs champs atomiquement en passant dans un document que je veux « fusionner » avec le doc existant? Imaginez que j'ai un document comme suit: {"favcolor": "rouge", "favfood": "pâtes"} et je veux mettre à jour un document existant avec ces valeurs. Je veux faire ceci:
var update = MongoDB.Driver.Builders.Update.Merge({"favcolor":"red","favfood":"pasta"});
ou même
var update = MongoDB.Driver.Builders.Update.Merge(myUpdateBsonDoc);
où myBsonDocument contient beaucoup de domaines que je ne veux pas avoir à « déballer » du document qui doit être fusionné avec le original.
Est-ce possible en quelque sorte?
Merci