В версии 5 nServiceBus у меня есть поведение, которое отслеживает сообщения в пути.
В поведении я смог получить доступ к DeliveryOptions (SendOptions) и увидеть очередь назначения, в NSB 6 с изменением поведения я больше не могу получить доступ к месту назначения сообщения.
Кто-нибудь знает, как получить доступ к месту назначения исходящего сообщения из поведения?
Предыдущий код в v5:
public class PendingCommandBehavior : IBehavior<OutgoingContext>
{
public void Invoke(OutgoingContext context, Action next)
{
var sendOptions = context.DeliveryOptions as Nsb.Unicast.SendOptions;
if (sendOptions != null && context.OutgoingMessage.MessageIntent == Nsb.MessageIntentEnum.Send)
{
var destinationEndpoint = sendOptions.Destination.Queue;
Код в v6:
public class PendingCommandBehavior : Behavior<IOutgoingSendContext>
{
public override async Task Invoke(IOutgoingSendContext context, Func<Task> next)
{
// context doesn't have any destination queue information???