1

あるキューから別のキューにメッセージを読み取ります。ただし、相関 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 オプションを使用しています。

4

2 に答える 2

0

このコード行は、相関 ID を取得します

  correlationID = System.Text.Encoding.UTF8.GetString(mqMsg.CorrelationId);
于 2013-04-02T18:10:44.673 に答える