У нас есть БД с вложенными записями 4-5 уровней, отношения один ко многим. Существует сущность A, которая имеет несколько B, и каждый B имеет несколько C и так далее. Представим, что мы получаем изменения в данных каждые 60 секунд из ленты.
Как наиболее эффективно использовать EF для вставки новых данных и обновления существующих, если произошли изменения?
Только с Entity Framework означает, что я не могу найти хорошее решение. Обычно мы не можем вызвать AddOrUpdate для объекта самого верхнего уровня, надеясь обновить все свои вложенные объекты без проблем. Я думал сохранить в памяти какие-то деньги со словарями, чтобы хотя бы знать, какие записи нужно обновить, а какие вставить. Чтобы отследить, есть ли изменения в существующих записях, я не могу найти способ, который я считаю подходящим.
P.S. Я использую шаблон единиц работы, но я думаю, что это не имеет значения для проблемы