Lekcja 5: Odbiera żądanie i wysyłania odpowiedzi
W tej lekcji użytkownik zapozna komunikatu żądania z kolejka docelowa i wysłania komunikatu odpowiedzi usługa inicjatora.Uruchom następujące kroki z kopii Management Studio na tym samym komputerze z systemem miejsce docelowe wystąpienie Aparat baz danych.
Procedury
Przełącz się do bazy danych TargetDB
Skopiuj i wklej następujący kod w oknie Edytora kwerend.Następnie uruchom go przełączyć kontekst do InstTargetDB bazy danych, gdy zostanie wyświetlony komunikat żądania i Wyślij komunikat odpowiedzi z powrotem do InstInitiatorDB.
USE InstTargetDB; GO
Żądanie odbierania i wysyłania odpowiedzi
Skopiuj i wklej następujący kod w oknie Edytora kwerend.Następnie uruchom go komunikat odpowiedzi z InstTargetQueue i wysłać wiadomość odpowiedzi do inicjatora.Instrukcja ODBIERZ pobiera komunikat żądania.Następnie Poniższa instrukcja SELECT wyświetla tekst tak, aby sprawdzić, czy jest ten sam komunikat, który został wysłany w poprzednim kroku.Instrukcja jeżeli testy czy odebranej wiadomości jest typ komunikatu żądania i Wyślij oświadczenie jest używany do wysłania komunikatu odpowiedzi z powrotem do inicjatora.KONIEC KONWERSACJI instrukcja jest używana do końca strony miejsce docelowe konwersacji.Końcowe instrukcja SELECT wyświetla tekst komunikatu odpowiedzi.
DECLARE @RecvReqDlgHandle UNIQUEIDENTIFIER; DECLARE @RecvReqMsg NVARCHAR(100); DECLARE @RecvReqMsgName sysname; BEGIN TRANSACTION; WAITFOR ( RECEIVE TOP(1) @RecvReqDlgHandle = conversation_handle, @RecvReqMsg = message_body, @RecvReqMsgName = message_type_name FROM InstTargetQueue ), TIMEOUT 1000; SELECT @RecvReqMsg AS ReceivedRequestMsg; IF @RecvReqMsgName = N'//BothDB/2InstSample/RequestMessage' BEGIN DECLARE @ReplyMsg NVARCHAR(100); SELECT @ReplyMsg = N'<ReplyMsg>Message for Initiator service.</ReplyMsg>'; SEND ON CONVERSATION @RecvReqDlgHandle MESSAGE TYPE [//BothDB/2InstSample/ReplyMessage] (@ReplyMsg); END CONVERSATION @RecvReqDlgHandle; END SELECT @ReplyMsg AS SentReplyMsg; COMMIT TRANSACTION; GO
Następne kroki
Pomyślnie odebrano komunikat żądania i wysłana wiadomość odpowiedzi do usługa inicjatora.Następnie zostanie komunikat odpowiedzi z kolejki inicjatora i zakończyć konwersację.See Lekcja 6: Odbieranie odpowiedzi i kończenie konwersacji.
Zobacz także