【发布时间】:2014-11-12 22:00:45
【问题描述】:
我正在尝试编写2个方法来测试一个队列中发送的消息是否在另一个队列中接收。
Send 方法 - 发送消息,例如 - “Message 123” - 以导出具有唯一关联 ID 的队列。
获取方法
这个队列会有很多消息,但是我只想根据我的相关 ID 获取我从上面发送的消息。
根据相关ID检查消息的代码
properties = new Hashtable();
properties.Add(MQC.CONNECTION_NAME_PROPERTY, "connection name");
properties.Add(MQC.TRANSPORT_PROPERTY, "transport type");
properties.Add(MQC.CHANNEL_PROPERTY, "channel name");
properties.Add(MQC.CONNECT_OPTIONS_PROPERTY, MQC.MQCNO_HANDLE_SHARE_BLOCK);
mqGetMsgOpts = new MQGetMessageOptions();
mqGetMsgOpts.Options = MQC.MQGMO_BROWSE_FIRST | MQC.MQGMO_WAIT | MQC.MQOO_INQUIRE;
mqGetMsgOpts.MatchOptions = MQC.MQMO_MATCH_CORREL_ID;
mqGetMsgOpts.WaitInterval = 3000; //3 secs wait time
我面临的问题是当我阅读消息时,我从导入队列中获取所有消息。
如何仅获取我发送的消息并验证导出队列中收到的消息是我的?
理论上是这样的
导入队列中的message.correlationid 与导出队列中的message.correlationid 匹配。
【问题讨论】: