我想将新文档添加到具有外键“User”
的以下文档中{
name:himani,
User:[
{
_id:e25ffgf627627,
Name:User1
},
{
_id:fri2i2jhjh9098,
Name:User2
}
]
};
下面是我的代码,我试图在现有文档中添加新文档。 我的代码是:
var server = MongoServer.Create("mongodb://username:password@localhost:27017/?safe=true");
SafeMode mode = new SafeMode(true);
SafeModeResult result = new SafeModeResult();
var db = server.GetDatabase("himani");
var coll = db.GetCollection("test");
BsonDocument document = new BsonDocument();
document.Add("name", "himani");
result = coll.Insert(document, mode);
BsonDocument nested = new BsonDocument();
nested.Add("1", "heena").Add("2", "divya");
BsonArray a = new BsonArray();
a.Add(2);
a.Add(5);
nested.Add("values", a);
document["3"] = new BsonArray().Add(BsonValue.Create(nested));
coll.Save(document);
var query = Query.And(
Query.EQ("name", "himani"),
Query.EQ("3.1", "heena")
);
var match = coll.FindOne(query);
var update = Update.AddToSet("3", new BsonDocument {{ "count", "2" }});
coll.Update(query, update);
我想向User数组添加一个新文档。我通过上面的代码来做这件事,但它没有用。请告诉我正确的方法。
答案 0 :(得分:1)
我根本不了解你的文档结构......我在这里找到的唯一“用户”数组是一个名为“3”的字段。您的代码确实可以工作并将文档附加到“3”数组中。以下是运行代码后的结果。也许你可以更清楚地了解在你“追加”用户之后你的文档是什么样的。
{
"_id":ObjectId("4fa7d965ce48f3216c52c6c7"),
"name":"himani",
"3":[
{
"1":"heena",
"2":"divya",
"values":[ 2, 5 ]
},
{
"count":"2"
}
]
}