Пример #1
0
        /// <summary>
        /// MSMQ 지정된 큐에 연결합니다.
        /// </summary>
        /// <param name="sQueuePath">MSMQ 경로</param>
        /// <param name="oMode">MSMQ 사용 모드를 지정</param>
        public object GetConnection(string sQueuePath, StoreManagerMode oMode)
        {
            try
            {
                if (MessageQueue.Exists(sQueuePath) == false)
                {
                    _msmq = MessageQueue.Create(sQueuePath, true);
                }
                else
                {
                    _msmq = new MessageQueue(
                        sQueuePath, false, true
                        , oMode == StoreManagerMode.Write ? QueueAccessMode.SendAndReceive : QueueAccessMode.ReceiveAndAdmin);
                }

                if (_msmq.Transactional)
                {
                    _tran = new MessageQueueTransaction();
                }
            }
            catch (System.Exception)
            {
                throw;
            }

            return(_msmq);
        }
Пример #2
0
 /// <summary>
 /// MSMQ Path를 입력받아 인스턴스 생성
 /// </summary>
 /// <param name="sQueuePath">MSMQ 경로</param>
 /// <param name="oMode">MSMQ 사용 모드를 지정</param>
 public MSMQStoreManager(string sQueuePath, StoreManagerMode oMode)
 {
     _mode            = oMode;
     ConnectionString = sQueuePath;
     GetConnection(ConnectionString, oMode);
 }