我使用的是简单的3层架构。在本文中,我使用DTO类在UI、BL和DL之间进行通信。那么,有什么更好的方法可以在层之间进行通信呢?还是这是正确的方式?
DTO,数据传输对象,是分发层的概念,在消费者和服务之间传输数据时使用。因此,如果您不发布任何服务,请退出DTO。
要回答您的问题,还取决于您的应用程序有多复杂。如果很简单,只需使用CRUD操作,甚至可以使用DataTable
、DataSet
进行通信。
另外,DDD中的域实体是数据访问层、业务逻辑层和表示层之间通信的核心对象。
基本上,应用程序中有一些不同类型的对象:
- DTO,当您提供公共服务时使用,是消费者和您的服务之间通信的主要对象
- 视图模型,表示层中的对象以支持UI
- 域实体来自业务逻辑层,包含业务逻辑
小心术语:
- Tier:表示物理层,如数据库服务器、web服务器
- 层:表示逻辑层:固定层、业务逻辑层、数据访问层