DTO可以让实例方法返回派生值吗?

Kar*_*enF 8 dto instance-methods

DTO是否可以接受基于DTO数据返回派生值的实例方法?或者DTO应该是纯数据容器而没有其他方法(除了getter/setter)?

我的纯粹主义者说,商业逻辑很容易融入这种方法.但是,如果(例如)跨应用程序层共享DTO,则可能存在在DTO上具有此类方法的论据.

你对此有何看法?有没有可以接受的情况,或者应该避免这种事情?为什么/为什么不呢?

Dav*_*vid 8

DTO不应该有行为,它们仅仅是用于跨进程边界传输数据的容器,并且应该仅包含setter/getters.

应该不惜一切代价避免它,否则它将被解释为DTO模式的误用.

  • 我在过去一年中看过的大多数最佳实践书籍都反对DTO. (2认同)