2016-11-01 1 views
1

Je suis le guide de démarrage de NServiceBus (version 5) et j'obtiens l'erreur ci-dessous.NServiceBus impossible de recevoir le message

Lorsque le client envoie une commande au serveur, le serveur a des problèmes pour recevoir le message. Le code est correct, car le même code sur une autre machine fonctionne. Il manque donc quelque chose sur ma machine.

Je n'exécuter cette commande comme il est mentionné dans le tutoriel:

DISM.exe/Online/norestart/anglais/Enable-Feature/all/FeatureName: MSMQ-serveur

Mais ça ne marche toujours pas.

2016-11-01 19: 50: 47,316 erreur ServiceBus.Transports.Msmq.MsmqDequeueStrategy erreur dans la réception de messages. System.Transactions.TransactionAbortedException: La transaction a été abandonnée. ---> System.Transactions.TransactionManagerCommunicationException: La communication avec le gestionnaire de transactions sous-jacent a échoué. ---> System.Runtime.InteropServices.COMException: le gestionnaire de transactions n'est pas disponible. (Exception de HRESULT: 0x8004d01b) à System.Transactions.Oletx.IDtcProxyShimFactory.ConnectToProxy (String nodeName, guid resourceManagerIdentifier, IntPtr managedIdentifier, Boolean & nodeName correspondantes, UInt32 & whereaboutsSize, CoTaskMemHandle & whereaboutsBuffer, IResourceManagerShim & resourceManagerShim) à System.Transactions .Oletx.DtcTransactionManager.Initialize() --- Fin de trace de pile d'exception interne --- à system.Transactions.Oletx.OletxTransactionManager.ProxyException (COMExcept de COMException d'ions) à System.Transactions.Oletx.DtcTransactionManager.Initialize () à System.Transactions.Oletx.DtcTransactionManager.get_ProxyShimFac tory() à System.Transactions.Oletx.OletxTransactionManager.CreateTransaction (Transa Les propriétés ctionOptions) à System.Transactions.TransactionStatePromoted.EnterState (InternalTransactio n tx) --- Fin de trace de pile d'exception interne --- à System.Transactions.TransactionStateAborted.CheckForFinishedTransaction (Dans ternalTransaction tx) à System.Transactions.EnlistableStates.Promote (InternalTransaction tx) à System.Transactions.Transaction.Promote() à System.Transactions.TransactionInterop.ConvertToOletxTransaction (Transacti sur transaction) à System.Transactions.TransactionInterop.GetDtcTransaction (Transaction trans actions ) à System.Messaging.MessageQueue.StaleSafeReceiveMessage (Timeout UInt32, l'action Int3 2, propriétés MQPROPS, NativeOverlapped * chevauché, ReceiveCallback rece iveCallback, CursorHandle cursorHandle, transaction IntPtr) à System.Messaging.MessageQueue.ReceiveCurrent (timeout TimeSpan, Int32 actio n, CursorHandle curseur, filtre MessagePropertyFilter, MessageQueueTransaction dans ternalTransaction, MessageQueueTransactionType TransactionType) à System.Messaging.MessageQueue.Receive (timeout TimeSpan, MessageQueueTransa ctionType TransactionType) à NServiceBus.Transports.Msmq.MsmqDequeueStrategy .b__12_1() dans C: \ Bu i ldAgent \ work \ 3206e2123f54fce4 \ src \ NServiceBus.Core \ Transports \ Msmq \ MsmqDequeueS trategy.cs: ligne 248 à NServiceBus.Transports.Msmq.MsmqDequeueStrategy.TryReceiveMessage (Func`1 r ampli-tuner, un message & messages) dans C: \ BuildAgent \ work \ 3206e2123f54fce4 \ src \ NServiceBus .Core \ Transports \ Msmq \ MsmqDequeueStrategy. cs: line 332

Répondre

2

Pour moi, le problème était que le service Distributed Transaction Coordinator était désactivé. Après l'avoir allumé, tout fonctionne comme prévu.