In allen Beispielen von CQRS, die ich gesehen habe, lösen die Domain-Ereignisse Aktualisierungen des Lesemodells aus, aber nichts anderes. Aber was ist, wenn Sie möchten, dass ein Domänenereignis andere Änderungen in der Domäne verursacht?
Nehmen wir beispielsweise an, Sie haben folgende Voraussetzungen:
Was ist der beste Weg, damit umzugehen?
Es gibt ein spezielles Konzept namens Sagas für genau diesen Zweck. Beginnen Sie mit diesem Artikel von Rinat Abdullin, dann gehen Sie von dort.
Ihre Option 3 kommt diesem Konzept nahe. Eine Saga ist im Grunde ein Event-Handler, der neue Befehle ausgibt. Sie möchten nicht, dass ein Ereignis Aggregate außerhalb des Ursprungs bearbeitet, sondern das Ereignis behandelt und neue Befehle gemäß Ihren Geschäftsregeln einreicht. Das ist, was die Sage tun wird.
Tags und Links domain-driven-design cqrs domain-events