Иногда, когда NServiceBus получает сообщение, оно выходит из строя, за исключением ниже.Это заставляет NServiceBus повторять попытку (до настроенного предела повторения).Иногда одна из попыток приводит к успешной обработке сообщения, но для всех повторных попыток характерен сбой с одним и тем же исключением.В этом случае сообщение направляется в очередь ошибок, как и ожидалось, когда все попытки повторяются.
Мой вопрос ... что может вызвать это исключение в первую очередь? Это не 'Похоже, он связан с моим кодом обработчика сообщений, поскольку мой код не отображается в трассировке стека.
- Версия NServiceBus: 2.6.0.1504
- ОС: Windows Server 2003
- Код обработчика предназначен для .NET 3.5 или более ранней версии
Вот полное сообщение об исключении и трассировка стека:
NServiceBus.Unicast.Transport.Msmq.MsmqTransport [(null)] - Failed raising 'finished message processing' event. System.Messaging.MessageQueueException: Cannot enlist the transaction.
at System.Messaging.MessageQueue.SendInternal(Object obj, MessageQueueTransaction internalTransaction, MessageQueueTransactionType transactionType)
at System.Messaging.MessageQueue.Send(Object obj, MessageQueueTransactionType transactionType)
at NServiceBus.Unicast.Transport.Msmq.MsmqTransport.SendMsmqMessage(Message m, String destination)
at NServiceBus.Unicast.Transport.Msmq.MsmqTransport.Send(TransportMessage m, String destination)
at NServiceBus.Unicast.UnicastBus.SendReadyMessage(Boolean startup)
at NServiceBus.Unicast.UnicastBus.TransportFinishedMessageProcessing(Object sender, EventArgs e)
at NServiceBus.Unicast.Transport.Msmq.MsmqTransport.OnFinishedMessageProcessing()