Je crée un logiciel dans lequel l'utilisateur peut créer un nouveau produit basé sur un produit plus ancien. Maintenant, je dois faire des opérations de copie/clonage avec Entity Framework. D'abord j'ai commencé à écrire comme ceci:Clonage de données sur 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 } }
Le problème est que ce n'est pas une bonne façon de le faire. Existe-t-il des informations de clonage simples (à l'exception de Guid qui doit être généré pour les nouvelles lignes) ou devrais-je copier manuellement tout?
Autre solution
Vous pouvez également utiliser EmitMapper ou AutoMapper pour faire la copie des propriétés.
Il semble qu'il n'y a pas plus belle solution, donc je vais accepter cela comme une réponse :) – Tx3
@ Tx3 Si l'une des réponses ajoutées par la suite de fournir plus de niceness que vous recherchez, ne hésitez pas mettre à jour la réponse acceptée. :-) –
La solution fournie [ici] (http://stackoverflow.com/a/15322430/159341) donne l'impression d'être beaucoup plus propre. Utiliser 'AsNoTracking()' pour retourner un objet détaché qui peut être rajouté, ce qui crée une nouvelle entité lorsque le contexte est sauvegardé. – Tr1stan