0
我已經深深嵌入文檔MongoDB中,像這樣:MongoDB的C#驅動upserting嵌套文件
[
{
id : 1,
stuff : [
{
id : 1,
morestuff: [
{id : 1, text : "foo"},
{id : 2, text : "boo"}
]
},
{
id : 2,
morestuff: [
{id : 1, text : "foo2"},
{id : 2, text : "boo2"}
]
}
]
}
]
我的C#的表示是這樣的:
class CoreElement
{
public int id { get; set; }
public List<Stuff> stuff { get; set; }
}
class Stuff
{
public int id { get; set; }
public List<MoreStuff> morestuff { get; set; }
}
class MoreStuff
{
public int id { get; set; }
public string text { get; set; }
}
現在我可以有不同的情況:
- 給定ID的CoreElement不存在
- Stu FF與給定的ID不在CoreElement名單上
- MoreStuff不CoreElement
在功能的列表。如果我創建這樣的一個對象:
CoreElement ce = new CoreElement();
ce.id = 1;
Stuff st = new Stuff();
st.id = 2;
MoreStuff ms = new MoreStuff();
ms.id = 17;
ms.text = "something";
st.morestuff.Add(ms);
ce.stuff.Add(st);
有沒有一種辦法將它插入到我的集合中,以便在已存在的情況下將MoreStuff添加到相應的文檔中,或者創建新文檔(CoreElement或Stuff)(如果它尚不存在)?
任何幫助表示讚賞。謝謝。
你用'$ push'試過了upsert嗎? – WiredPrairie