Пример: объект продукта загружается вместе с его тегами без отслеживания :
repository.Product
.Include("Tag")
.Where(p => p.ProductID == 1)
.Execute(MergeOption.NoTracking);
Обратите внимание, что это отношение многие-ко-многим ;продукт может иметь несколько тегов, а теги могут быть связаны с несколькими продуктами.
В другом месте я хочу сохранить любые изменения, внесенные в сущность продукта, но без сохранения изменений, внесенных в связанные теги или его связь сэти теги.
То есть ни одно из этих изменений не может быть сохранено:
- Тег удален из продукта
- Тег добавлен в продукт
- Тег был изменен (например, имя было изменено)
Поэтому я подумал, что могу каким-то образом присоединить только продукт к новому ObjectContext иСохранить изменения.Но по какой-то причине я не могу понять, как присоединить к контексту объекта только одну сущность, а не весь граф.
Конечно, я мог бы прикрепить граф и затем вручную отсоединить все другие сущности, кромепродукт, о котором идет речь, но это ужасное решение, и я надеялся найти другое.