【发布时间】:2021-02-11 19:28:37
【问题描述】:
我正在尝试使用 DDD 方法实施员工管理系统。该系统是使用 .Net Core 构建的。我为此系统创建了几个项目(UI、应用程序、域、基础设施)。现在在我的域层中,我有一个 Employee 实体(即 Employee 聚合的 Aggregate 根)。业务要求是,每当创建 Employee 时,我都需要进行信用检查,并根据结果为 Employee 实体更新名为“IsCreditCheckDone”的属性。信用检查服务基本上是一个外部休息服务。我正在考虑在 Domain.Services.Interfaces 文件夹中创建一个名为 ICreditCheckService 的接口。我正在考虑在服务文件夹内的基础设施层中实现 ICreditCheckService。此外,ICreditCheckService 将被注入到 Employee 类中,而 Dependency 将映射到 UI 项目的 Startup 类中。
我的问题是,当它使用外部系统时,它是处理域服务的正确方法吗?还是应该换一种方式?
EMS.域
-
实体
- Employee.cs
-
服务
- 接口
- ICreditCheckService.cs(这将被注入到 Employee 实体)
- 接口
EMS.基础设施
- 服务
- CreditCheckService.cs(此服务将对外部 Rest API 进行 http 调用)
【问题讨论】:
标签: .net-core domain-driven-design clean-architecture