Так что я доволен базовой концепцией CQS, где у вас может быть команда, которая записывает в одну базу данных и обновляет базу данных запросов, из которой вы читаете.
Однако рассмотрите сценарий, в котором вы вводите данные, и хотите предотвратить дублирование.
Используя новый ввод данных о сотрудниках, например, реестр сотрудников, прорабатывая кучу анкет для ввода данных о новых сотрудниках:
- Возьмите верхний лист.
- Введите имя сотрудника и уникальный номер платежной ведомости в интерфейсе пользователя.
- Submit.
- Положите бумагу в «готовую стопку».
- Повтор.
Как бы вы теперь запретили пользователю снова вводить тот же самый номер платежной ведомости, например, если он отвлекся и не может вспомнить, набрал ли он уже один, а "сообщение" не получило все вернуться к запросу базы данных для поиска пользователем?