Web API业务层体系结构及其职责

时间:2018-11-14 22:14:22

标签: c# asp.net-web-api architecture asp.net-web-api2 business-logic-layer

我的Web api业务层中有以下类,我想知道GatewayService类是否应该在Business层中,还是应该将其放在名为BusinessService的单独项目中?因为它不是在控制器类中直接调用的,并且不依赖于数据存储库?

业务层

  • GatewayService(引用方法并调用外部Web服务并返回事务列表)
  • UserService(使用数据层中的<存储库类>返回生产数据库中所有用户的列表)
  • TransactionService(从获取所有用户的列表,然后从获取所有用户的交易)

这是事务控制器在做什么;

交易控制器

  

获取用户列表      

将用户列表传递给,然后将返回用户交易列表

     

将所有交易的列表传递给,以通过数据存储库类进行处理

2 个答案:

答案 0 :(得分:1)

对于 N层体系结构

TransactionService应该在Application层中,然后您的GatewayService才能成为Business Layer的一部分。

enter image description here

对于清洁架构

GatewayService应该是PresistenceInfrastracture层的一部分,因此它不是business层(此处是domainapplication)。

enter image description here

答案 1 :(得分:0)

它将是业务层的一部分。在业务层,您将对系统fx实施外部需求。物流等。属于与网关服务相同的类别。