Я хотел бы получить исключение при отправке на биржу RabbitMQ с использованием MassTransit, если сообщение не доставлено в какие-либо очереди. Похоже, что обязательный флаг RabbitMQ можно использовать для чего-то подобного, но я не смог найти способ установить это с помощью MassTransit. Поддерживается ли это?Есть ли поддержка для обязательного флага RabbitMQ в MassTransit
Мой код:
var personSendEndpoint = busControl.GetSendEndpoint(new Uri($"rabbitmq://localhost/{personQueueName}")).Result;
// An exception should occur on the following call if the message is not delivered to any queue
personSendEndpoint.Send(new PersonUpdated() { Name = "Dorian Gray", Key = Guid.NewGuid() });
Спасибо Крис, теперь я устанавливаю обязательный флаг, но не получаю исключение .Net из вызова отправки (я проверил обмен, который я отправляю, не имеет привязок). Является ли исключение RabbitMQ подавленным MassTransit? Есть ли способ проверить, успешно ли отправлена? Или я чего-то не хватает? – MarkHasper
Ожидаете ли вы вызов Send(), каждый метод в MassTransit является асинхронным, поэтому вам нужно будет ожидать возврата метода, если вы хотите увидеть исключение. –
Да, я жду отправки. Кажется, это не так. – MarkHasper