我在我的项目中使用 MongoDB .Net 驱动程序。我想更新存储在 MongoDB 中的对象的所有属性。在文档中,更新显示如下:
var filter = Builders<BsonDocument>.Filter.Eq("i", 10);
var update = Builders<BsonDocument>.Update.Set("i", 110);
await collection.UpdateOneAsync(filter, update);
但我不想为所有属性调用 Set
方法,因为有很多属性,将来可能会更多。
如何使用 MongoDB .Net 驱动程序更新整个对象?
最佳答案
您可以使用 ReplaceOneAsync
而不是 UpdateOneAsync
来做到这一点。
您需要一个过滤器来匹配现有文档(带有文档 id 的过滤器是最简单的)和新对象。
Hamster hamster = ...
var replaceOneResult = await collection.ReplaceOneAsync(
doc => doc.Id == hamster.Id,
hamster);
关于c# - 更新 MongoDb 中对象的所有属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30893012/