假设我有两个类,如下所示:
public class Class1
{
....
public int CityId {get;set;}
public string CityName {get;set;}
public ObjectId _id {get;set;}
}
public class Class2 : Class1
{
public string OrderId {get;set;}
}
collUser.Update(
Query.EQ("_id", model._id),
Update.Replace(model));
当我使用对象类型时Class2
,更新以正常方式工作。
但是当我使用对象类型时Class1
,更新会删除OrderId
记录中的字段。
我假设它替换了集合中的所有记录(文档)。
有没有办法避免这种情况?或者有比使用 Update.Set 更简单的方法吗?
Update.Set("fieldName",value).Set("fieldName2",value2)
我的意思是,如果该对象(Class1 或 Class2)拥有该属性而不删除其余字段,我只想更新字段。