J'utilise le modèle de réponse à la demande de NServiceBUs pour un de mes projets. Un bus de service auto-hébergé écoute un message de demande et répond avec un message de demande. Donc, dans le code de message WCF i ont codé commeAppel synchrone Nservicebus
// sent the message to bus.
var synchronousMessageSent =
this._bus.Send(destinationQueueName, requestMessage)
.Register(
(AsyncCallback)delegate(IAsyncResult ar)
{
// process the response from the message.
NServiceBus.CompletionResult completionResult = ar.AsyncState as NServiceBus.CompletionResult;
if (completionResult != null)
{
// set the response messages.
response = completionResult.Messages;
}
},
null);
// block the current thread.
synchronousMessageSent.AsyncWaitHandle.WaitOne(1000);
return response;
Le Qué de destinaton sera envoyé la réponse. Je reçois le resault une ou deux fois après que la réponse n'arrive pas au client. Est-ce que je fais quelque chose de mal
Considérez ceci: http://stackoverflow.com/questions/3758405/nservice-bus-message-delay-problem – mynkow