【发布时间】:2017-02-02 09:35:02
【问题描述】:
我有一个软件,我通过 C# 软件删除 MQMessages。
首先:我从 MQ 作为 XML 消息字符串接收消息,我进行一些数据处理,然后我准备 XML 文件并将其放入响应队列中。
我将请求消息的相关 ID 设置为与响应消息以及 MessageId 相同,如下所示:
MQMessage _msg = new MQMessage();
_msg.Encoding = 273;
_msg.CharacterSet = 37;
_msg.Format = "MQSTR";
_msg.CorrelationId = message.CorrelationId;
_msg.MessageId = message.MessageId;
其中 message 是我收到的消息(请求消息),_msg 是我放置的响应消息(响应消息)
在 IBM 端,当我收到响应消息时,我检查了相关 ID 和请求消息的相关 ID,但它失败了。
这是我将消息放入队列的方式:
qmgr.AccessQueue(message.ReplyToQueueName.Trim(), MQC.MQOO_OUTPUT
+ MQC.MQOO_FAIL_IF_QUIESCING, QueueManagerName, DynamicQueueName, "").Put(_msg);
我的代码中缺少什么?
【问题讨论】: