Je développe une application C# qui a les deux conditions suivantes:Undo/Redo + enregistrer
- l'utilisateur doit être en mesure d'annuler/rétablir des commandes telles que l'insertion, la modification et la suppression de comptes, les transactions, etc.
- Ces commandes ne doivent être conservées dans la base de données SQL CE que lorsque l'utilisateur clique sur Enregistrer.
Existe-t-il des meilleures pratiques pour cela? J'ai lu que la mise en œuvre du modèle de commande est utile pour l'exigence annuler/rétablir. Le problème pour moi vient de persister les changements à la base de données. J'utilise des entités commerciales et non des DataSets, et je ne peux pas utiliser Linq pour SQL ou Entity Framework, donc je ne suis pas sûr de savoir comment suivre les modifications apportées à ces entités pour les conserver dans la base de données lorsque l'utilisateur clique sur Enregistrer.
Ma question est:
est-il préférable de mettre en œuvre l'unité de modèle de travail pour suivre les changements ou est-il une meilleure façon? Je ne suis pas sûr de savoir comment cela se combinera avec le modèle de commande, par ex. est l'unité de travail passée à la commande qui marque une entité comme dirty/new/deleted, et que se passe-t-il lorsque la méthode undo d'une commande est exécutée? L'entité est-elle marquée comme sale/nouvelle/supprimée ou peut-elle être supprimée de l'unité de travail en quelque sorte?
http://stackoverflow.com/a/29949644/2961878 Ce n'est pas la réponse à votre question, mais je pense qu'AZURITE peut vous aider à trouver des idées. – Alisa