По номинальной стоимости вашего вопроса, если вам необходимо выполнить операции с несколькими агрегатами, вы просто предоставите идентификаторы каждого агрегата в вашей команде (которые клиент получит со стороны запроса), а затем вы получите каждый агрегат изхранилище.
Однако, глядя на один из ваших комментариев в ответ на другой ответ, я вижу, что вы на самом деле имеете в виду проверка на основе набора.
Этот вопрос довольно поднялмного споров о том, как это сделать, и Грег Янг написал пост в блоге.
Классический вопрос: как мне проверить, что имя пользователя еще не использовалосьпри обработке моего «CreateUserCommand».Я полагаю, что предлагаемый подход состоит в том, чтобы предположить, что клиент уже сделал эту проверку, задав запросную сторону перед выполнением команды.Когда пользовательский агрегат создан, UserCreatedEvent будет вызван и обработан стороной запроса.Здесь запрос вставки не будет выполнен (либо из-за проверки, либо из-за уникального ограничения в БД), и будет выдана компенсационная команда, которая удалит вновь созданный агрегат и, возможно, отправит электронное письмо пользователю, сообщив ему, что имя пользователя уже занято.
Главное, вы предполагаете, что клиент сделал проверку.Я знаю, что этот подход поначалу трудно осознать - но это характер возможной последовательности .
Также вы можете прочитать этот другой вопрос, который похожи содержит некоторые мудрые слова из Udi Dahan .