3
假設我有一個這樣的模式:保存在MongoDB中的文檔,而不重挫以前的部分更新到子文件
public class Item
{
public Guid Id { get;set;}
public string Title { get;set;}
public List<Comment> Comments { get;set;}
}
當使用官方驅動程序保存到蒙戈,意見將最終成爲一個嵌入子文檔。我不希望有人添加註釋,要求保存整個文件,所以我寫了一個原子的部分更新方法:
public void AddComment(Item item, Comment comment)
{
Collection.Update(
Query.EQ("_id", item.Id),
Update.AddToSet("Comments",
BsonValue.Create(comment)));
}
但是,我不知道如何指定的蒙戈驅動程序,「意見」是使用這些就地更新進行維護,如果在父文檔上調用Save(),則不應該保留。
有沒有可以用來裝飾房產的屬性?或者我會被迫編寫一個更新方法來指定我想手動更新的所有屬性。
你在想BsonIgnore的?如果你把它放在你的評論列表中,它會被MongoDB忽略。 –
@PawBaltzersen:如果你會把BsonIgnore序列化器在序列化/反序列化過程中忽略評論,但他只需要在序列化期間忽略它。 –