首页 > 其他 > 详细

MSMQ小Demo

时间:2015-05-14 23:38:17      阅读:299      评论:0      收藏:0      [点我收藏+]

Demo基于http://www.cnblogs.com/zhili/p/MSMQ.html

技术分享

Server代码:

using System.Messaging;
using System.Text;
using System.Threading.Tasks;

namespace MSMQServer
{
    class Program
    {
        static void Main(string[] args)
        {
            const string messageQueuePath = @".\Private$\MyPrivateMessageQueue";
            if (!MessageQueue.Exists(messageQueuePath))
            {
                using (MessageQueue mq = MessageQueue.Create(messageQueuePath))
                {
                    mq.Label = "";
                    Console.WriteLine("已创建一个私有信息队列。");
                    Console.WriteLine("消息队列名称:{0}",mq.QueueName);
                    Console.WriteLine("消息队列路径:{0}",mq.Path);
                    mq.Send("My First MessageQueue Message ");
                }
            }


            if (MessageQueue.Exists(messageQueuePath))
            {
                using (MessageQueue mq = new MessageQueue(messageQueuePath))
                {
                    Console.WriteLine("消息队列名称:{0}", mq.QueueName);
                    Console.WriteLine("消息队列路径:{0}", mq.Path);
                    mq.Send("My Second MessageQueue Message !");
                }
               
            }

            Console.ReadKey();
        }
    }
}

Client代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Messaging;
using System.Text;
using System.Threading.Tasks;

namespace MSMQClient
{
    class Program
    {
        static void Main(string[] args)
        {
            const string messageQueuePath = @".\Private$\MyPrivateMessageQueue";
            if (MessageQueue.Exists(messageQueuePath))
            {
                using (MessageQueue mq=new MessageQueue(messageQueuePath))
                {
                    mq.Formatter=new XmlMessageFormatter(new string[]{"System.String"});
                    int i = 0;
                    foreach (var message in mq.GetAllMessages())
                    {
                        Console.WriteLine("My  MessageQueue Message {0} :{1}", i, message.Body);
                        i++;
                    }

                    var msg = mq.Receive();
                    Console.WriteLine("My First Receive MessageQueue Message  Is :{0} ", msg.Body);
                }
            }

            Console.ReadKey();
        }
    }
}

 

MSMQ小Demo

原文:http://www.cnblogs.com/Yang2012/p/MSMQ.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!