我想要实现的是持久存储(数据库)上有一个“可撤销”更改的持久列表。持久命令模式
该体系结构为域对象和工作单元使用存储库进行事务处理,并为最后一部分使用命令模式(撤消)。然而,对我来说,似乎没有好的解决方案,如何使执行的命令持久。
基本上,在存储库add/update/delete上有3个写操作,并且在命令执行前我需要存储状态的命令模式。例如:我必须在删除域对象(实体)之前存储域对象,以便在命令上调用撤消命令时可以恢复它。 这里最大的问题是如何以一种整洁的方式存储之前的状态!
也许你们有人遇到了同样的问题,这在我看来并不罕见。
感谢,我也碰到过, 克里斯
hm,我猜blob/xml方法似乎很吸引人,因为它的简单性。然而,我并不十分确定它在现实中是如何运作的,但它绝对值得一个原型。 前两种方法似乎非常模糊,我猜也很复杂。 – balistof 2010-07-20 07:56:51
前两种方法需要复杂的设计,因此在没有详细描述问题的情况下提供更准确的答案是不现实的。 BLOB方法确实有效,但需要注意数据在不同版本的软件中保持可读性。 – richj 2010-07-20 21:55:10