我有以下的设计: 我的设计 我的设计http://s15.postimg.org/3zha8rzqh/Design_Idea.png
我有一个叫做“ProductDTO”我的服务层 (左服务)类。
当“更新产品(ProductDTO)”承包经营合同被称为-它应该调用业务逻辑层中的“更新产品”功能。
在数据库(“数据访问层”)有一个名为“产品”的实体,因为我使用LINQ到实体我也会有一类被称为有“产品”。
我的问题是 - 我在哪里从“ProductDTO”到“产品”翻译?
我应该在服务层中的“Translate_ProductDTO_To_Product”功能? 这似乎是最逻辑的答案,因为这是知道什么“ProductDTO”是唯一的层。
但是,这意味着该服务层还必须知道什么是“产品”是,因此将不得不引用数据访问层组件。
它是否正确 ?
我认为, 服务层应该只引用业务逻辑层 ,以及商业逻辑层应该只引用数据访问层 ,而服务层应该一无所知DAL。