Как DbContext может извлечь только что добавленную сущность без вызова SaveChanges - PullRequest
0 голосов
/ 17 апреля 2020

Я реализую инструмент миграции с использованием EF 6. Вот что я пытаюсь сделать:

            var count = targetContext.Orders.Count(); //return 0

            sourceContext.DetachEntity(srcOrder);
            targetContext.Orders.Add(srcOrder);

            var count2 = targetContext.Orders.Count();  //return 0

            var destOrder = targetContext.Orders.Find(srcOrder.Id); //still returns correct/not-null value
            some more code.....

            destOrder?.Attachments.Add(attachment); // is this right way

Я пытаюсь получить недавно добавленную сущность (для отображения свойств навигации и объединений) без вызова savechanges ( ) метод и РАБОТАЕТ. Несмотря на то, что count и count2 возвращают 0, я все равно получаю ненулевой объект от targetContext.Orders.Find(srcOrder.Id)

Я нашел соответствующий ответ здесь , но я все еще не уверен, правильно ли он сохранится OrderAttachment отображение и это безопасный способ использовать сущность таким способом.

...