Вступить в клуб →
сложнаявопросАрхитектура приложения: DI, Clean Architecture, CQRS

Клиент получил письмо об оформлении заказа, которого нет в базе

Сущность Order публикует доменное событие OrderPlaced. Обработчик события сразу отправляет письмо. События диспатчатся до SaveChangesAsync. Иногда сохранение падает на ограничении базы — а письмо уже ушло.

Как правильно связать события и транзакцию?

  • Внешние эффекты — после коммита через outbox
  • Отправлять письмо до создания заказа
  • Повторять SaveChanges, пока не получится
  • Отказаться от доменных событий

🔒 Проверка ответа — для участников клуба

  • Проверка ответа
  • Подсказка, если застряли
  • Разбор с объяснением, почему так
  • Прогресс по всем задачам и виртуальные собеседования
Зарегистрироваться →

Регистрация занимает минуту

Другие задачи раздела