public void Dispose()
 {
     if (_mqClient != null)
     {
         _mqClient.NewChannelMessages -= NewMessagesEventHandler;
         _mqClient.Unsubscribe(_accountsChannel);
         _mqClient.Dispose();
         _mqClient = null;
     }
 }
        private void InitMQClient()
        {
            _accountsChannel = ConfigurationManager.AppSettings["MQAccountsChannelName"];
            _mq = Global.Container.GetExport <IMessageQueue>(ConfigurationManager.AppSettings["MessageQueueType"]).Value;
            if (_mq != null)
            {
                IMQInitParams initParams = _mq.CreateInitParams();
                initParams.Params["ConnectionString"] = ConfigurationManager.AppSettings["ConnectionStringMsgBus"];

                _mq.Init(initParams);

                _mqClient = new MQClient.Client(_mq);
                if (_mqClient.Init(ConfigurationManager.AppSettings["MQSubscriberName"]))
                {
                    if (_mqClient.Subscribe(_accountsChannel))
                    {
                        _mqClient.NewChannelMessages += NewMessagesEventHandler;
                    }
                }
            }
        }