{
"_id" : "",
"Username" : "",
"Points" : 0,
"CompletedAchievements" : [],
"ActiveAchievements" : [],
"Kudos" : [],
"Teams" : [],
"UserType" : "Standard"
}
这是我想要插入的记录。 我正在尝试将以下对象添加到 ActiveAchievements 数组中。
{
"_id": "my new id",
"progress": 10
}
我希望将其添加到事件成就数组中,该数组已存在于我的数据库中的记录(具有我可以获取的唯一 ID)中。以及 future 更多。
我如何使用 MongoDb.Driver 来做到这一点?在 C# 中
最佳答案
假设有一个名为 users
的集合,其文档的 Username
为“John Doe”,以下代码将添加 { "_id": "my new id ", "progress": 10 }
到 ActiveAchievements
数组字段。
var collection = database.GetCollection<BsonDocument>("users");
var filter = Builders<BsonDocument>.Filter.Eq("UserName", "John Doe");
var update = Builders<BsonDocument>.Update
.Push<BsonDocument>(
"ActiveAchievements",
new BsonDocument("_id", "my new id").Add("progress", 10));
var result = collection.UpdateOne(filter, update);
Console.WriteLine(result.ModifiedCount); // should print 1, as one document is updated
引用文献:
关于c# - 如何使用 MongoDB C# 将新对象插入(推送)到嵌套数组中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66386320/