我曾经在域层中声明了我的DTO。但那是在我后来理解应用程序层应该将原语传递给域层以实例化域模型实体而不是 DTO 之前。现在我知道了这一点,我对在域层中声明 DTO 没有任何用处。
由于我的应用程序层具有应用程序服务,可以将数据与DTO相互转换以将数据传输到各个层,因此我认为DTO也可以在应用程序层中声明。
那么,应用层通常是应该声明 DTO 的地方吗?
提前谢谢。
更新日期: 02/25/2016我将根据 .NET 应用程序体系结构指南第 2 版中的以下引文在应用程序服务层中定义应用程序服务的接口:"在服务层中,您可以定义和实现服务接口和数据合同"..
由于 DTO 用于将数据从应用程序传输到客户端应用程序等,因此它们应该在处理对应用程序的服务调用的层(最外层)中声明。无论您将其称为应用层还是其他其他东西(在我的公司,我们称之为"服务层")取决于您。