c# messagequeue 예제

| 0

MessageQueue 클래스는 메시지를 읽는 데 사용할 수 있습니다. Receive() 메서드를 사용하면 단일 메시지가 큐에서 읽혀지고 제거됩니다. 개인 큐 FirstQueue를 읽는 작은 예제를 작성합니다. PathnamePathname은 큐를 열 수 있도록 컴퓨터 이름과 큐 이름을 지정합니다. 다음 코드 3은 로컬 호스트에서 큐 FirstQueue를 엽니다. 큐가 있는지 확인 하려면 정적 메서드 MessageQueue.Exists()를 사용 합니다. 코드 3: 시스템 사용; System.메시징 사용; 네임스페이스 FirstQueue { 클래스 프로그램 { 정적 보이드 메인(문자열[] args) { 경우(MessageQueue.Exists(@”FirstQueue”)) { 메시지큐 큐 = 새 메시지큐(@”FirstQueue”); } {Console.WriteLine(“큐 .FirstQueue”); } } 큐가 열릴 때 다른 형식 식별자를 사용할 수 있습니다. 표 1은 특정 형식에 대한 큐 이름 구문을 보여 주며, 형식 이름 형식 이름을 열려있는 큐에 지정할 수 있습니다. 형식 이름은 Active Directory에서 큐를 검색하여 큐가 있는 호스트를 찾는 데 사용됩니다. 연결이 끊어진 환경에서는 메시지를 보낼 때 큐에 도달할 수 없는 경우 형식 이름을 사용해야 합니다.

형식 이름 큐의 구문은 다음과 같은: MessageQueue 큐= 새 MessageQueue (@ “FormatName : “FormatName : Public=023423DFG-0984-3w45-K987-12638NU979HH”) 테이블 1 큐 유형 구문 개인 큐 MachineNamePrivate$Queue Public queue MachineNameQueue 큐 MachineNameQueueName저널$ 기계 저널 큐 기계 이름저널$ 기계 이름 죽은 편지 큐 MachineNameDeadLetter$ 기계 트랜잭션 죽은 편지 큐 MachineNameXactDeadLetter$ 의 보내기 메서드를 사용 하 여 메시지를 보내는 MessageQueue 클래스, 큐에 메시지를 보낼 수 있습니다. Send() 메서드의 인수로 전달된 개체는 직렬화된 큐입니다. Label 및 MessageQueueTransaction 개체를 전달할 수 있도록 Send() 메서드가 오버로드됩니다. 이제 큐가 있는지, 큐가 존재하지 않는지 확인하는 작은 예제를 작성합니다. 그런 다음 큐가 열리고 Send() 메서드를 사용하여 “첫 번째 메시지” 메시지가 큐로 전송됩니다. 경로 이름은 로컬 시스템인 서버 이름에 대해 “.”를 지정합니다. 개인 큐에 대한 경로 이름은 로컬에서만 작동합니다. Visual Studio C# 콘솔 환경에서 다음 코드 4를 추가합니다.

코드 4: 시스템 사용; System.메시징 사용; 네임 스페이스 FirstQueue { 클래스 프로그램 { 정적 보이드 메인 (문자열[] args) { 시도 {경우 (! 메시지 큐.존재(@”.개인$첫 번째 큐”)))))) { 메시지 큐.만들기(@.개인$FirstQueue”); } 메시지 큐 큐 = 새 메시지 큐(@”개인$첫 번째 큐”))))); 큐. 보내기(“첫 번째 메시지”, “레이블”); } catch(메시지큐예외 전) { Console.WriteLine(예: 메시지); } } } } 응용 프로그램을 빌드하고 보고 실행합니다. 그림 3과 같이 구성 요소 관리 관리 도구에서 메시지를 볼 수 있습니다. 메시지를 열고 대화 상자의 본문 탭을 선택하면 XML을 사용하여 메시지가 포맷된 것을 볼 수 있습니다. 메시지 받기 MessageQueue 클래스는 메시지를 읽는 데 사용할 수 있습니다. Receive() 메서드를 사용하면 단일 메시지가 큐에서 읽혀지고 제거됩니다. 개인 큐 FirstQueue를 읽는 작은 예제를 작성합니다. XmlMessageFormatter를 사용하여 메시지를 읽을 때 생성자 또는 포터에 읽히는 개체의 형식을 전달해야 합니다. 이 예제(코드 5)에서 System.String 형식은 XmlMessageFormatter 생성자인 경우 인수 배열로 전달됩니다.

Follow admin:

Latest posts from