0

不久前我问了一个关于回滚的问题,我有一个新的相关问题,我有一个答案,但想要一些输入。

所以我正在构建一个持久性无知的对象模型,我现在正在考虑回滚。我已经查看了 nHibernate 是如何管理它的,这表明如果我希望能够取消未保存的更改,我需要在域对象上拥有自己的实现。

所以我在 ComponentModel 中看到了 IEditableObject ,它简洁地描述了这个问题。Microsoft 的示例与描述几乎是我所做的,它们有一个包含实际数据的私有结构,当数据更改时,原始数据被保存并创建一个新结构。那和 INotifyPropertyChanged 通知对象已重置。

有没有人做过类似的事情?你能推荐一个更好的模式吗?

4

1 回答 1

2

我建议您阅读 Rocky Lhotka 在他的框架 CSLA.NET 上的一些内容:http ://www.lhotka.net/ 。我不确定我是否会推荐实际使用它,但他非常彻底地涵盖了诸如回滚和业务对象数据一致性之类的内容。

于 2011-02-18T15:32:36.450 回答