如何通过C#驱动程序为集合中的所有文档从另一个现有字段(NubmerLong)的值创建一个新字段(String)? 使用Mong Shell没问题:
db.getCollection("MyCollection").updateMany(
{ },
[{ $set: { recordId: { $toString: "$id" } } }]
)
Mongo驱动程序具有UpdateDefinitions和PipelineDefinitions。而且它们之间没有兼容性。
答案 0 :(得分:1)
这是一种合并C#驱动程序Update + Pipeline的方法:
var stage = new BsonDocument { { "$set", new BsonDocument { { "recordId", new BsonDocument { { "$toString", "$id" } } } } } };
var pipeline = PipelineDefinition<BsonDocument, BsonDocument>.Create(stage);
...
Builders<BsonDocument>.Update.Pipeline(pipeline)