Отображение графов объектов DTO в EF Entities с использованием AutoMapper

Насколько хорошо Entity Framework обнаруживает изменения, внесенные в объекты, если использовать инструмент, такой как AutoMapper, для перемещения данных DTO в объекты?

например

var existing = dbcontext.First(e => e.Id = dto.Id);
Mapper.Map(dto,existing);

Я знаю, что это хорошо работает для отдельных объектов или очень наивных примеров.

Но насколько хорошо он на самом деле играет, если есть реальный граф?

например

Предположим, у нас есть данные, подобные этим:

dtoOrder.detail[0].product = getSomeProduct();

var existing = dbcontext.First(e => e.Id = dtoOrder.Id);
Mapper.Map(dtoOrder,existing);

Я предполагаю, что EF будет думать, что новый продукт, присвоенный детали [0], является новым объектом? поскольку AutoMapper не будет знать, откуда взять эту сущность.

Итак, возможно ли использовать AutoMapper для безопасного двухстороннего отображения данных из DTO в Entities при работе с графами реальных объектов, а не только наивными примерами?

0 ответов

Другие вопросы по тегам