Я работаю над архитектурой CQRS. Сейчас у нас есть все части на месте, и мы обрабатываем команды после этого потока:Отношение CQRS между командами домена и событиями
- Команда отправляется клиентом и получил в HTTP конечной ChangePersonLanguage
- Команда отправляется и обрабатывается ChangePersonLanguageCommandHandler
- Внутри обработчика команды мы инкапсулировать бизнес-логику, поэтому мы загружаем корневой агрегат и выполнить метод Person.ChangeLanguage (язык)
- На данный момент PersonRootAggregate вызывает событие домена PersonLanguageChanged который содержит корень агрегатный объект
- Обработчик выполнить логику упорствовать агрегат и другой обработчик логика для отправки уведомлений по электронной почте
Правильно ли это? Могу ли я выполнить логику персистентности внутри обработчика команд и удалить один обработчик событий?
Очень четкое объяснение, спасибо – Raffaeu