我已在Patterns, Principles and Practices of DDD一书中读到,如果您想要完全封装您的域模型,您可以将其属性设为私有,并使用 Memento 模式来阅读它们。还有一个示例,存储库获取域模型的快照,然后映射到数据库模型并将其更改保存到数据库。它还从db检索数据库模型,将其映射到Snapshot,然后使用 Factory 模式从Snapshot重新构建Domain模型并使用它。
如果我们要按照本书的说法,将域模型快照从服务层返回到表示层然后将其映射到视图模型是否正确?或者在表示层中创建快照并将其传递给服务层,使用工厂模式在其中重新构建,然后将域模型传递到存储库,在存储库中它将再次将其快照映射到数据库模型并保存到db ....
您是否可以在需要使用这种复杂的映射架构时给出一些示例?
当你可以更简单地编写复杂的代码时,感觉真的很像。
更新
如果能够更容易理解我的要求,我可以提供代码示例。 ;)