Lição 4: Começando a conversação
Nesta lição, você aprenderá a iniciar uma conversação que se expande por duas instâncias do Mecanismo de Banco de Dados e que envia uma mensagem de solicitação da instância de iniciador para a instância de destino. Execute estas etapas de uma cópia do Management Studio executada no mesmo computador da instância de iniciador.
Procedimentos
Alternar para o banco de dados InitiatorDB
Copie e cole o código a seguir em uma janela do Editor de Consultas. Em seguida, execute-o para alternar o contexto para o banco de dados InstInitiatorDB no qual a conversação será iniciada.
USE InstInitiatorDB; GO
Inicie uma conversação e envie uma mensagem de solicitação
Copie e cole o código a seguir em uma janela do Editor de Consultas. Em seguida, execute-o para começar uma conversação e enviar uma mensagem de solicitação para o //TgtDB/2InstSample/TargetService no InstTargetDB. O código precisará ser executado em bloco único porque há uma variável que é usada para passar um identificador de caixa de diálogo da instrução BEGIN DIALOG para a instrução SEND. O lote executa a instrução BEGIN DIALOG para começar a conversação e depois cria uma mensagem de solicitação. Em seguida, ele usa o identificador de caixa de diálogo em uma instrução SEND para enviar uma mensagem de solicitação nessa conversação. A última instrução SELECT exibe apenas o texto da mensagem enviada.
DECLARE @InitDlgHandle UNIQUEIDENTIFIER; DECLARE @RequestMsg NVARCHAR(100); BEGIN TRANSACTION; BEGIN DIALOG @InitDlgHandle FROM SERVICE [//InstDB/2InstSample/InitiatorService] TO SERVICE N'//TgtDB/2InstSample/TargetService' ON CONTRACT [//BothDB/2InstSample/SimpleContract] WITH ENCRYPTION = ON; SELECT @RequestMsg = N'<RequestMsg>Message for Target service.</RequestMsg>'; SEND ON CONVERSATION @InitDlgHandle MESSAGE TYPE [//BothDB/2InstSample/RequestMessage] (@RequestMsg); SELECT @RequestMsg AS SentRequestMsg; COMMIT TRANSACTION; GO
Próximas etapas
Você iniciou com êxito uma conversação e enviou uma mensagem de solicitação para o serviço de destino. A seguir, você receberá a mensagem de solicitação na fila de destino e enviará uma mensagem de resposta para o serviço de iniciador. Consulte Lição 5: Recebendo uma solicitação e enviando uma resposta.
Consulte também