あるキューから別のキューにメッセージを読み取ります。ただし、相関 ID は保持されません。
インポート キュー内のメッセージの相関 ID が「ABC12345」の場合、それをエクスポート キューに入れると、相関 ID の値が異なります。
2 つのキュー間で同じ相関 ID を維持し、常に一意のメッセージ ID を持つにはどうすればよいですか?
得る:
mqQueue.Get(mqMsg);
string messageID = Convert.ToString(mqMsg.MessageId);
string correlationID = Convert.ToString(mqMsg.CorrelationId);
たとえば、相関IDが「000123456789」の場合、読み取り後、元に戻すと、同じメッセージの値が変更されます。
置く:
mqMsg.CorrelationId = System.Text.Encoding.UTF8.GetBytes(correlationID);
mqQueue.Put(mqMsg, mqPutMsgOpts);
MQ.NET クラスを介して MQ PUT および GET オプションを使用しています。