我想在我的項目中使用CQRS模式的元素。我不知道我是否正確地使用Command and Events。 我不確定的事情是如果事件可以調用命令。爲了更好地展示我想要做什麼,我將使用圖表和示例。CQRS - 可以EventListener調用命令?
這是一個示例:
用戶調用TripCreateCommand。 TripCreateCommandHandler完成他的工作併成功發佈TripCreatedEvent。
現在我們有兩個監聽器TripCreatedEvent(聽衆的執行順序並不重要)
首先監聽器(可以是第二個偵聽器後執行):
在trip.author.friends每個用戶調用兩個Command(命令的順序是很重要的)
- PublishTripOnUserWallCommand
- SendNewTripEmailNotificationCommand
- SendNewTripPlatformNotification
第二監聽器(可以是第一個監聽之前執行):
- PublishTripOnUserSocials
並且這是示例圖:
是這是一個好方法? EventListener是否可以調用Command,或者我可以用其他方式來做?
感謝您的重播!可擴展性是我的項目中最重要的事情之一(我想擁有的水平擴展我的應用程序的能力),所以我一定要asynchornously處理命令。我想使用異步並從c#等待來做到這一點。 – mrrobot