public override MessageResult OnMessage(MessageContext context)
        {
            if (context == null)
            {
                AppConnectLogHelper.Error("AppConnect context is null , process finished");
                return(Ack());
            }

            try
            {
                #region 处理前的校验
                if (context.Data == null)//消息体为空
                {
                    AppConnectLogHelper.Error("AppConnect context.Data is null , process finished");
                    return(Ack());
                }
                var messageFiledList = Convert.ToString(context.Data).Trim('\"').Split(new char[] { '|' }, StringSplitOptions.RemoveEmptyEntries);
                if (messageFiledList == null || messageFiledList.Count() < 3)
                {
                    AppConnectLogHelper.Error("处理消息时 消息结构不完整 , process finished");
                    return(Ack());
                }
                AccountStaffMessage empMessage = new AccountStaffMessage
                {
                    TenantId   = Convert.ToInt32(messageFiledList[0]),
                    NotifyType = (AccountNotifyType)(Convert.ToInt32(messageFiledList[1])),
                    UserId     = Convert.ToInt32(messageFiledList[2])
                };
                AppConnectLogHelper.Debug("Account Staff的消息" + JsonConvert.SerializeObject(empMessage));
                #endregion

                switch (empMessage.NotifyType)
                {
                //account账号停用,离职,删除
                case AccountNotifyType.DisableUserStatus:
                case AccountNotifyType.DisableStaffStatus:
                case AccountNotifyType.DeleteStaff:
                    //AppConnectLogHelper.Error("分发rbmq 未使用ActionBlock方法作为缓冲");
                    //var provider = new DimissionRecordExcuter(empMessage);
                    //provider.Excute();
                    AppConnectLogHelper.Error("分发rbmq 使用本地的ActionBlock方法作为缓冲");
                    if (!_asyncHandleQueue.Post(new DimissionRecordExcuter(empMessage)))
                    {
                        return(Reject());
                    }
                    break;

                default:
                    AppConnectLogHelper.Debug("AppConnect MessageHandler 未订阅的消息类型  .  Json :" + JsonConvert.SerializeObject(empMessage));
                    break;
                }
            }
            catch (Exception ex)
            {
                AppConnectLogHelper.Error("AppConnect MessageHandler 处理出现异常  .  Json :" + JsonConvert.SerializeObject(ex));
            }
            return(Ack());
        }
 public DimissionRecordExcuter(AccountStaffMessage accountStaffMessage)
 {
     this.accountStaffMessage = accountStaffMessage;
 }