伙计们,我使用 mongodb 的官方 CSharp 驱动程序,我得到了这两个类:
public class A
{
public A()
{
Bs = new List<B>();
}
[BsonId]
public string Id { get; set; }
public string Name { get; set; }
public IList<B> Bs { get; set; }
}
public class B
{
public string Name { get; set; }
}
在 db 中,B 嵌入在 A 文档中,实体是 A 的对象,然后像这样执行保存工作:
collection.Save<A>(entity);
Save 方法将根据 Id 执行插入或更新,我的问题是:当我第二次执行 collection.Save(entity) 时,这意味着实体文档已经存在于 A 集合中,是否 A 和 B 文档中的每个字段更新了吗?我不知道驱动程序如何处理这种事情。假设有很多 B 对象,比如说 100 个并且没有修改。什么过程?