Несколько проекторов на одной и той же модели чтения в Broadway CQRS

у меня есть Customer Readmodel, который содержит некоторые свойства, включая active имущество.

Теперь предположим, что я хотел бы заполнить 2 таблицы с информацией о клиентах: например, одна таблица только с customer id а также active статус и другая таблица, содержащая всю информацию.

Должен ли я сделать отдельный Projector, Readmodel а также Repository для достижения этой цели?

РЕДАКТИРОВАТЬ:
Пример сценария:

CustomerCreatedEvent -> содержит все данные клиента

CustomerActivationEvent -> содержит только идентификатор клиента с включенным статусом = true

Readmodel = класс клиента

Проектор обрабатывает оба события.

Обработчик CustomerActivationEvent загрузит клиента и обновит таблицу «active_users» через CustomerRepository (или ActiveCustomersRepository?) На основе данных в CustomerActivationEvent.

1

Решение

Нет.

Обработчики событий вашей стороны чтения отвечают за обновление того, что вы называете Readmodels, так, как вы хотите.

Например, у вас может быть CustomerCreatedEventHandler, который обновляет 2 необходимые вам таблицы, или вы можете иметь два отдельных обработчика событий, оба подписчика одного и того же события, каждый из которых обновляет свою таблицу.

0

Другие решения

Других решений пока нет …