Можно ли разделить сагу Rebus на несколько классов обработчиков?
У меня есть рабочий процесс саги Rebus, который инициируется многими типами сообщений и завершается только двумя типами сообщений.
Вместо того чтобы иметь один класс, реализующий все различные IAmInitiatedBy<T>
и IHandleMessage<T>
, я хотел бы разделить их на один класс для каждого сообщения, которое инициирует рабочий процесс.И один класс, который обрабатывает сообщения, завершающие рабочий процесс.
Так что, если появятся какие-то новые требования, которые также могут запустить рабочий процесс, я просто создаю новый обработчик, а не обновляю существующий.
это действительный вариант использования Rebus Sagas?Чтобы разделить обработчики между несколькими классами, работающими с одним и тем же типом SagaData.
Первоначальные тесты этого, похоже, работают, но наши существующие модульные тесты рабочего процесса используют SagaFixture, которую я не могу заставить работать вместечерез несколько приборов.