这可能是您可以执行的最常见和基本的数据库操作之一。然而,在MongoDb中如何执行此操作仍不明确。
C#驱动程序中有一个UpdateManyAsync方法。但我能找到的只有像这样的示例;
以下操作将更新所有违规次数大于4的文档,并设置一个评论标志:
坦白说,我不知道你们是如何构建应用程序的,但我们的组织绝不会将领域逻辑(例如多少违规构成审核)嵌入到数据库查询逻辑中,就像我找到的所有这种操作的示例一样。
看起来最好的选择是使用某种批量API,但对于这样一个简单的操作来说,似乎这是不必要的。让批量API执行一千个分别替换似乎对我来说效率低下,但我可能错了?
在其他存储技术和更成熟的API中,执行此操作所需的所有代码都是(例如Entity Framework);
这是否被追踪作为Mongo项目的功能请求?
C#驱动程序中有一个UpdateManyAsync方法。但我能找到的只有像这样的示例;
以下操作将更新所有违规次数大于4的文档,并设置一个评论标志:
try {
db.restaurant.updateMany(
{ violations: { $gt: 4 } },
{ $set: { "Review" : true } }
);
} catch (e) {
print(e);
}
坦白说,我不知道你们是如何构建应用程序的,但我们的组织绝不会将领域逻辑(例如多少违规构成审核)嵌入到数据库查询逻辑中,就像我找到的所有这种操作的示例一样。
看起来最好的选择是使用某种批量API,但对于这样一个简单的操作来说,似乎这是不必要的。让批量API执行一千个分别替换似乎对我来说效率低下,但我可能错了?
在其他存储技术和更成熟的API中,执行此操作所需的所有代码都是(例如Entity Framework);
db.UpdateRange(stocks);
await db.SaveChangesAsync();
这是否被追踪作为Mongo项目的功能请求?