命令处理程序应该包含服务,还是服务包含命令

本文关键字:包含 服务 命令 命令处理程序 | 更新日期: 2023-09-27 18:22:49

我试图遵循CQRS模式,但我不知道谁应该包含谁。比如我应该在命令处理程序上注入应用程序服务,还是相反?

这是一个例子。我正在向命令处理程序注入服务。并使用CreatProductCategoryCommandHandler的Execute方法内的服务

public CreateProductCategoryCommandHandler(ICategoryService categoryService)
{
    _categoryService = categoryService;
}

或者当我有命令处理程序时,我甚至需要服务吗?

命令处理程序应该包含服务,还是服务包含命令

在您的定义中,什么是"服务"?

通常,服务(例如,域服务、应用程序服务)在没有命令处理程序的情况下工作,而命令处理程序需要服务来处理命令。因此,需要将服务注入命令处理程序,而不是相反。