我知道我可以通过设置特定字段来自动更新现有的 Mongo 文档。以下代码将执行此操作:
var update = MongoDB.Driver.Builders.Update.Set("InsideLegMeasurement", 32.4);
SafeModeResult result = personCollection.Update(query, update, UpdateFlags.Multi,SafeMode.True);
但是,我可以通过传入一个我想与现有文档“合并”的文档来自动更新几个字段吗?想象一下,我有一个如下文档: {"favcolor":"red","favfood":"pasta"} 并且我想用这些值更新现有文档。我想做这个:
var update = MongoDB.Driver.Builders.Update.Merge({"favcolor":"red","favfood":"pasta"});
甚至
var update = MongoDB.Driver.Builders.Update.Merge(myUpdateBsonDoc);
其中 myBsonDocument 包含许多我不想从要与原始文档合并的文档中“解包”的字段。
这有可能吗?
谢谢