Leçon 6 : réception de la réponse et fin de la conversation

Dans cette leçon, vous apprendrez à recevoir le message de réponse provenant du service de la cible et à mettre fin à la conversation. Exécutez ces étapes à partir d'une copie de Management Studio exécutée sur le même ordinateur que l'instance de l'initiateur du Moteur de base de données.

Procédures

Basculer vers la base de données InitiatorDB

  • Copiez et collez le code suivant dans une fenêtre de l'éditeur de requête. Puis, exécutez-le pour rebasculer le contexte vers la base de données InstInitiatorDB dans laquelle vous recevrez le message de réponse et mettrez fin à la conversation.

    USE InstInitiatorDB;
    GO
    

Recevoir la réponse et mettre fin à la conversation

  • Copiez et collez le code suivant dans une fenêtre de l'éditeur de requête. Puis, exécutez-le pour recevoir le message de réponse et mettre fin à la conversation. L'instruction RECEIVE récupère le message de réponse dans InstInitiatorQueue. L'instruction END CONVERSATION met fin à la conversation du côté de l'initiateur. La dernière instruction SELECT affiche le texte du message de réponse afin que vous puissiez vérifier qu'il s'agit du même que celui envoyé à l'étape précédente.

    DECLARE @RecvReplyMsg NVARCHAR(100);
    DECLARE @RecvReplyDlgHandle UNIQUEIDENTIFIER;
    
    BEGIN TRANSACTION;
    
    WAITFOR
    ( RECEIVE TOP(1)
        @RecvReplyDlgHandle = conversation_handle,
        @RecvReplyMsg = message_body
      FROM InstInitiatorQueue
    ), TIMEOUT 1000;
    
    END CONVERSATION @RecvReplyDlgHandle;
    
    -- Display recieved request.
    SELECT @RecvReplyMsg AS ReceivedReplyMsg;
    
    COMMIT TRANSACTION;
    GO
    

Étapes suivantes

Cela conclut le didacticiel. Les didacticiels sont uniquement des vues d'ensemble. Ils ne décrivent pas toutes les options disponibles. Les didacticiels utilisent une logique et une gestion des erreurs simplifiées et ne devraient pas être utilisés dans un environnement de production.Pour créer des conversations efficaces, fiables et solides, vous avez besoin d'un code plus complexe que celui qui figure dans l'exemple de ce didacticiel.

Revenir aux didacticiels de Service Broker

Didacticiels de Service Broker