Collections DTO能否引用域模型的VO?

Collections DTO能否引用域模型的VO?,collections,domain-driven-design,dto,value-objects,Collections,Domain Driven Design,Dto,Value Objects,问题 数据传输对象(DTO)能否引用域模型的值对象(VO) 上下文 在我的域中,我有一个从集合导入聚合的导入器。该集合由导入程序依赖的收集器生成的数据组成。由于导入器和收集器都是我的域的服务(接口),DTO是否可以引用域值对象,或者我是否应该坚持使用原语并仅在处理集合(聚合的构建)时将它们转换为值对象 收集器实现,其中构建了由域模型中的值对象组成的DTO 数据传输对象(DTO)能否引用域模型的值对象(VO) 是的,但是你要非常小心 A的核心是一条信息。为了使消息达到其目的,发送方和接收方必须对

问题

数据传输对象(DTO)能否引用域模型的值对象(VO)

上下文

在我的域中,我有一个从集合导入聚合的导入器。该集合由导入程序依赖的收集器生成的数据组成。由于导入器和收集器都是我的域的服务(接口),DTO是否可以引用域值对象,或者我是否应该坚持使用原语并仅在处理集合(聚合的构建)时将它们转换为值对象

收集器实现,其中构建了由域模型中的值对象组成的DTO


数据传输对象(DTO)能否引用域模型的值对象(VO)

是的,但是你要非常小心

A的核心是一条信息。为了使消息达到其目的,发送方和接收方必须对其语义有一致的理解。对DTO模式进行不兼容的更改需要对接收器进行相应的更改

域模型中的值对象不是消息。它是结构化信息,纯粹是当前模型的实现细节。如果我们想部署模型的新版本,使用完全不同的值或其底层数据结构的排列,那么我们可以

因此,让DTO(应该是稳定的)依赖于一个值对象(不保证是稳定的)正在为以后的问题创造机会

如果你的价值观词汇是稳定的,那么风险就更低

数据传输对象(DTO)能否引用域模型的值对象(VO)

是的,但是你要非常小心

A的核心是一条信息。为了使消息达到其目的,发送方和接收方必须对其语义有一致的理解。对DTO模式进行不兼容的更改需要对接收器进行相应的更改

域模型中的值对象不是消息。它是结构化信息,纯粹是当前模型的实现细节。如果我们想部署模型的新版本,使用完全不同的值或其底层数据结构的排列,那么我们可以

因此,让DTO(应该是稳定的)依赖于一个值对象(不保证是稳定的)正在为以后的问题创造机会

如果你的价值观词汇是稳定的,那么风险就更低