CQRS - 执行两个处理程序

时间:2012-02-10 09:55:22

标签: architecture cqrs

我有一个用于创建评论的处理程序。我有第二个处理程序来创建任务。

两个处理程序都实现了相同的接口

public interface IHandle<TCommand>
{
      void Handle(TCommand);
}

现在,我需要在成功创建任务后立即创建注释。但另一方面,我仍然需要将注释处理程序作为独立的处理程序。

所以我想知道重用评论处理程序的最佳解决方案是什么。

我的第一个想法是将注释处理程序注入任务处理程序,然后在任务处理程序Handle方法中调用注释处理程序。

我的基础结构是一个ASP.NET MVC应用程序,我使用IoC容器解析处理程序,然后执行处理程序。我没有使用任何消息总线。

1 个答案:

答案 0 :(得分:3)

您可以实现TaskCreatedEvent处理程序,该处理程序在TaskCreatedEvent发生后发送CreateComment命令。这基本上就是所谓的Saga,并协调跨越聚合边界的过程。