Идея верна.Вы можете оптимизировать его, так что, например, вы не будете загружать отдельно отношения для обновления и отношения для удаления, но вам все равно придется вручную синхронизировать текущее отключенное состояние ваших объектов с состоянием в базе данных.Единственный способ синхронизировать состояние графа сущностей - это сделать это вручную для каждой сущности и отношения.
Вопрос в том, работает ли ваш код.Я думаю, что нет.Он не обновляет записи, потому что не изменяет состояние записей на измененные.Вы также не можете снова прикрепить запись, загруженную из контекста.В качестве последнего пункта, если эти table1 и table2 как-то связаны, я не вижу никакого кода, работающего с самим отношением (если вы не используете свойства FK).