Vous ne pouviez pas faire une copie (profonde) de l'objet précédent et l'utiliser comme objet suivant, permettant aux utilisateurs d'écraser tous les champs modifiés? De cette façon, les champs seraient ce que l'utilisateur a entré en dernier, individualisés par utilisateur et mis à jour au fur et à mesure qu'ils traitaient ces champs.
Si vous avez une façon de vous souvenir de la dernière chose entrée par utilisateur, vous pouvez même le conserver entre les sessions.
Les OP commentaires:
Malheureusement, faire une copie en profondeur d'un objet bousille ObjectContext lorsque les relations sont impliqués. Un nouvel objet avec des relations doit avoir de nouveaux objets relationnels créés ou des objets existants doivent être interrogés à partir de la base de données.
Alors? Si la relation est à une autre entité (une clé étrangère dans la base de données), c'est une relation uses-a, et vous la retenez simplement. Si c'est un attribut, vous le copiez. Par exemple, disons que votre formulaire est une entrée de données sur les employés, et qu'il comporte une liste déroulante pour, je ne sais pas, employeeType, soit "Exempt" (pas d'heures supplémentaires) ou "Non-exempt" (heures supplémentaires). Vous avez extrait les valeurs de employeeType de la base de données et vous souhaitez que l'employé suivant ait les mêmes valeurs que le dernier employé entré, afin de sauvegarder les saisies de données. Donc, votre copie profonde associerait simplement l'employé copié à la même base de données employeeType.
Mais pour les données d'attribut (comme le nom), vous devez en faire une copie.
par curiosité, qu'est-ce que l'ORM a à faire avec ce que vous demandez? – lomaxx
Très peu. Je pensais juste qu'il pourrait y avoir une méthode généralement acceptée pour faire cela. – Damien