2016-12-13 7 views
0

Я хочу запланировать повторяющееся сообщение в MassTransit, но каждый раз, когда сообщение отправляется в очередь, я хочу сгенерировать одинаковые случайные данные.Расписание повторного сообщения со случайными данными в MassTransit

сейчас у меня есть такой код

 var scheduleEndPoint = await _bus.GetSendEndpoint(new Uri($"{BusConstants.RabbitMqUri}/quartz")); 
     await scheduleEndPoint.ScheduleRecurringSend(
      new Uri($"{BusConstants.RabbitMqUri}/{ConfigurationManager.AppSettings["ArticlesImportServiceQueue"]}"), 
      new ArticlesImportRecurringSchedule(), 
      ArticlesImportNotificationMapper.MapFromFile()); 

Проблема заключается в том, что ArticlesImportNotificationMapper.MapFromFile() вызывается только первый раз. Какие-либо предложения?

ответ

1

Планируемое сообщение - это то, что запланировано - оно никоим образом не изменяется во время доставки.

Если вам нужно создать случайные данные или изменить содержимое сообщения, я бы предложил вам запланировать отдельное повторяющееся сообщение, например GenerateAndSendCommand, и создать пользователя, который получает эти сообщения, а затем отправляет фактические CommandWithRandomData на сконфигурированный потребитель после его создания и подключения случайных данных и т. д.