Предположим, у меня есть модель, подобная этой:
public class Item
{
public Guid Id { get;set;}
public string Title { get;set;}
public List<Comment> Comments { get;set;}
}
При сохранении в Mongo с использованием официального драйвера комментарии заканчиваются как встроенный поддокумент.Я не хочу, чтобы кто-то добавил комментарий, требующий сохранения всего документа, поэтому я написал атомарный метод частичного обновления:
public void AddComment(Item item, Comment comment)
{
Collection.Update(
Query.EQ("_id", item.Id),
Update.AddToSet("Comments",
BsonValue.Create(comment)));
}
Однако я не уверен, как указать драйверу Mongo, что «Комментарии"поддерживается с помощью этих обновлений на месте, и его не следует сохранять при вызове Save () для родительского документа.
Есть ли атрибут, которым я мог бы украсить свойство?Или я буду вынужден написать метод обновления, в котором будут указаны все свойства, которые я хочу обновить вручную.