欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

必知必会!WCF分布式开发中的MSMQ消息队列技术详解(上)

最编程 2024-01-21 18:00:55
...
  static   void  Main( string [] args)
        {
            
// Create a public Queue
             if  ( ! MessageQueue.Exists( @" .\FrankMSMQ " ))
            {
                
using  (MessageQueue mq  =  MessageQueue.Create( @" .\FrankMSMQ " ))
                {
                    mq.Label 
=   " FrankPublicQueue " ;
                    Console.WriteLine(
" FrankPublicQueue is Created: " );
                    Console.WriteLine(
" Path is {0}: " , mq.Path);
                    Console.WriteLine(
" FrankPublicQueue' name is {0}: " , mq.QueueName);
                    
// Console.Read();
                    mq.Send( " MSMQ Message " " Frank.Xu " );
                }
            }
// Create a private Queue
             if  ( ! MessageQueue.Exists( @" .\Private$\FrankMSMQ " ))
            {
                
using  (MessageQueue mq  =  MessageQueue.Create( @" .\Private$\FrankMSMQ " ))
                {
                    mq.Label 
=   " FrankPrivateQueue " ;
                    Console.WriteLine(
" FrankPrivateQueue is Created: " );
                    Console.WriteLine(
" Path is {0}: " , mq.Path);
                    Console.WriteLine(
" FrankPrivateQueue' name is {0}: " , mq.QueueName);
                    
// Console.Read();
                    mq.Send( " MSMQ Private Message " " Frank.Xu " );
                }
            }

            
// Get all public queues and send new messages
             foreach  (MessageQueue mq  in  MessageQueue.GetPublicQueues())
            {
                mq.Send(
" Sending MSMQ public message "   +  DateTime.Now.ToLongDateString(), " Frank.Xu " );
                
// string mName = mq.MachineName;
                Console.WriteLine( " Public Message is sent to {0}: " , mq.Path);
            }
            
// find private queues and send new messages
             if  (MessageQueue.Exists( @" .\Private$\FrankMSMQ " ))
            {
                MessageQueue mq 
=   new  MessageQueue( @" .\Private$\FrankMSMQ " );
                mq.Send(
" Sending MSMQ private message "   +  DateTime.Now.ToLongDateString(),  " Frank.Xu " );
                Console.WriteLine(
" Private Message is sent to {0}: " , mq.Path);
            }
            Console.Read();
        }