我刚刚开始深入研究我的第一次域驱动设计实验,并且我正在利用NWorkspace模式。这种模式似乎很有意义,但是我无法找到很多地方的例子,这个模式已被成功使用或甚至公开记录。在我深入了解我的实现之前,我想知道是否有人使用这种模式取得了成功,或者是否有人可以指出任何在我可以从中学习的任何开源项目中使用NWorkspace的引用。还有更好或更知名的替代方案,我应该知道这个模式吗?
NWorkspace的简要背景
对于那些可能不熟悉NWorkspace的人来说,它是由Jimmy Nisson's引入的一种模式,它抽象了查询和持久性责任。在他的“应用领域驱动设计和模式”一书中,Jimmy Nilsson展示了如何使用NWorkspace抽象DDD存储库的基础结构部分,以及提供一种机制来执行与持久性相关的跨存储库原子性。
答案 0 :(得分:1)
看起来他正在为读写存储库推荐单独的接口 我没有使用所描述的模式的经验,但我建议不具有跨存储库事务。相反,我建议在DDD社区(Eric Evans,Udi Dahan,Greg Young)中流行的一些解决方案对我有很大的帮助:
看看实施上述两件事是否简化了您的设计。