Я создаю программное обеспечение, в котором пользователь может создавать новый продукт на основе старого продукта.Данные клонирования на платформе Entity Framework
Теперь мне нужно сделать операции копирования/клонирования с помощью Entity Framework. Сначала я начал писать следующим образом:
foreach(sourcedata1 in table1) { ... create new table ... copy data ... create Guid ... add foreach(sourcedata2 in table2) { ... create new table ... copy data ... create Guid ... add ... and so on } }
Проблема в том, что это не очень хороший способ сделать это. Есть ли какая-либо легкая информация о клонировании (кроме Guid, которая должна быть сгенерирована для новых строк) или мне нужно вручную копировать все?
Другое решение
Вы также можете использовать EmitMapper или AutoMapper сделать копирование свойств.
кажется, что там не лучше решение, поэтому я принимаю это как ответ :) – Tx3
@ TX3 Если какой-либо из ответов добавлены позже предоставить больше любезность, которую вы искали, не стесняйтесь для обновления принятого ответа. :-) –
Решение, предлагаемое [здесь] (http://stackoverflow.com/a/15322430/159341), похоже на гораздо более чистый. Использование 'AsNoTracking()' для возврата отдельного объекта, который можно повторно добавить, который создает новый объект при сохранении контекста. – Tr1stan