1、消息队列(专用队列)的建立
安装windows组件(消息队列)后
计算机——管理——在消息队列中建立专用队列(私有队列),可以建立事务性队列或者非事务性队列
PS:在代码中向目标队列发送数据时,需要注意目标队列是事务性的还是非事务性的
事务性:
MessageQueueTransaction Mqt = new MessageQueueTransaction(); MessageQueue queue = new MessageQueue(MsmqSendPath); Message message = new Message(); message.Body = "aaaaaaa"; queue.Send(message, Mqt);
非事务性:
MessageQueue queue = new MessageQueue(MsmqSendPath);
Message message = new Message();
message.Body = "aaaaaaa";
queue.Send(message);
2、消息队列的路径(专用队列)
本地队列的路径: <add key="MsmqSendPath" value=".\private$\myqueue"/> 工作组内队列的路径 <add key="MsmqSendPath" value="FormatName:DIRECT=TCP:192.168.xxx.xxx\Private$\MyQueue"/> 外网队列的路径 <add key="MsmqSendPath" value="FormatName:DIRECT=TCP:xxx.xxx.xxx.xxx\private$\MyQueue"/>
3、消息队列的发送方法(专用队列)
无论目标队列是本地队列还是远程队列,发送方法是一致的。
PS:本地专用队列可以使用queue.Exists()来判断队列是否存在
远程专用队列不能用queue.Exists()来判断队列是否存在,可以直接发送