注意:不管是访问远程队列还是本地队列,访问者的本地系统一定要安装MSMQ。下面是在C#项目环境下操作MSMQ向本地发送和接收消息的示例代码:
- using System;
- using System.Messaging;
-
- namespace JSONMSMQ
- {
- class Program
- {
- static void Main(string[] args)
- {
- // 本地消息队列的地址
-
- // 初始化消息队列实例,该实例引用指定路径的“消息队列”队列
- // 初始化 Message类的实例
- // 设置消息的内容——json格式
- // 发送消息(非事务性)
- string msmqPath = @".\Private$\json";
-
- MessageQueue mq = new MessageQueue(msmqPath);
- Message msg = new Message();
- msg.Body = "{\"empoyees\":[{\"firstName\":\"Bill\", \"lastName\":\"Gates\"}, {\"firstName\":\"Indiana\", \"lastName\":\"Jones\"}]}";
- mq.Send(msg);
-
- // 接收消息msgReceive
- // 设置消息的格式
- // 把消息转换为字符串格式
- // ...
- Message msgReceive = mq.Receive();
- msgReceive.Formatter = new XmlMessageFormatter(new Type[] { typeof(string) });
- string receivedMsmq = msgReceive.Body.ToString();
-
- Console.Write(receivedMsmq);
- mq.Purge();// 删除队列中所有消息
- Console.ReadLine();
- }
- }
- }
提取出来的消息如下图所示:
|