我试图弄清楚在聚合根中更新多态子实体的最佳方法是什么。作为参考,假设我有一个存储对象的ShippingContainer
根实体;Cargo
有许多类型的Cargo
对象,例如 、BigCargo
等HazardousCargo
,每一种都有自己独特的属性。
我正在阅读这个问题:更新聚合中的实体
这个问题的答案似乎表明我应该将该ChangeCargo
方法放在ShippingContainer
采用某种 DTO 参数对象的对象上。我的问题是,当您尝试更新的对象是多态的时,这是否仍然是最佳实践(我现在是否需要镜像 Cargo 对象类型的 DTO 对象层次结构?),还是我应该做其他事情?