또 다른 newb MQ Server 질문. 메시지를 탐색하고 데이터베이스에 메시지 텍스트를 저장 한 다음 큐에서 메시지가 제거되도록 메시지를 읽어야하는 ASP.NET C# 응용 프로그램을 작성했습니다. 그렇게하면 저장에 실패하면 메시지가 대기열에 남아 있으므로 다시 보내 달라는 요청을하지 않아도됩니다.MQ WebSphere MessageID Woes
문제는 메시지를 탐색 할 때 메시지를 고유하게 식별하여 성공적인 데이터베이스 저장 후 읽을 수있는 (제거하는) 방법이 필요하다는 것입니다. 상관 ID 및 MessageId에 대해 읽었으며 값을 가져 오는 데 어려움이 있습니다.
CorrelationId는 항상 공백이므로 사용할 수 없습니다. messageId 읽을 수있는 것으로 변환하는 방법을 알 수 없습니다.
예 : MQ Explorer에 messageID가 AMQ AZMEUNK62 bS Ý으로 표시됩니다. MQ Explorer는 메시지 ID Y이트가 다음과 같다고 말합니다. 414D512055534E4A5241523632202020126210532001DD02.
어떻게 메시지 ID 바이트를 사람이 읽을 수있는 문자열로 변환하고 되돌릴 수 있습니까?
내가 사용할 수없는 결과를 반환하는 아래의 코드 시도했습니다 (AMQ AZMEUNK62 ↕b►S ☺를? ☻) 나는 때문에 이러한 지주
의 이러한 방법을 시도string msgIdStr = System.Text.Encoding.Default.GetString(mqMessage.MessageId);
string strMsgId = Encoding.UTF8.GetString(mqMessage.MessageId, 0, mqMessage.MessageId.Length);
How to convert byte[] to string?
모든 의견을 환영합니다.
제이슨 감사합니다. 데이터베이스에 메시지 ID를 바이너리로 저장 한 다음 나중에 큐에서 해당 메시지를 제거하는 데 사용합니다. 정말로 나를 던진 것은 MQ Explorer가 메시지 ID 바이트를 명백하게 표현한 것입니다. 그 가치를 얻으려고했지만 불가능한 것처럼 보입니다. –