2012-02-10 59 views
3

我有用於創建註釋的處理程序。我有第二個處理程序來創建任務。CQRS - 執行兩個處理程序

兩個處理程序已經實現了相同的接口

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

現在,我需要創建之後立即任務successfuly創建了一個註釋。但另一方面,我仍然需要註釋處理程序作爲獨立的處理程序。

所以我想知道什麼是重用評論處理程序的最佳解決方案。

我的第一個想法是簡單地將註釋處理程序注入任務處理程序,然後在任務處理程序Handle方法內調用註釋處理程序。

我的基礎結構是一個ASP.NET MVC應用程序,我使用IoC容器解析處理程序,然後執行處理程序。我沒有使用任何消息總線。

+0

是您網域的評論部分?是評論它自己的聚合根源還是隻是對任務的評論? – 2012-02-10 10:02:37

+0

是的,評論是它自己的AR。 – user49126 2012-02-10 10:31:47

+1

在這種情況下,您可以發送兩個命令。一個創建該任務,另一個創建該評論。鑑於您已在任務命令中設置了任務ID。 – 2012-02-10 10:39:13

回答

3

您可以實現TaskCreatedEvent處理程序,該處理程序在發生TaskCreatedEvent後發送CreateComment命令。這基本上就是所謂的傳奇,並協調整個邊界的過程。