我在 MongoDB 中深度嵌入了文档,如下所示:
[
{
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 不存在
- 具有给定 ID 的东西不在 CoreElement 的列表中
- MoreStuff 不在 CoreElement 的 Stuff 列表中
如果我创建这样的对象:
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)?
任何帮助表示赞赏。谢谢。