void OnGetUserSubAccountListRequest(IMessage msg, SessionEventArgs e) { var state = UserSubAccountOptState.Failed; IList <UserSubAccount> subAccountList = null; if (e.Session.SessionId != null) { try { subAccountList = _subAccountBll.GetList((e.Session.SessionId as UserSessionIdMetaData).Id); state = UserSubAccountOptState.Successed; } catch (Exception ex) { ErrorLog(msg.Header.Type, ex); } } else { state = UserSubAccountOptState.InvalidOpt; } e.Session.Send(new DataResponse <UserSubAccountOptState, IList <UserSubAccount> > { State = state, Data = subAccountList }, MessageType.GetUserSubAccountListResponse); }
internal void BindUserSubAccountList() { _subAccountBll.GetList(listResponse => { string info = string.Empty; switch (listResponse.State) { case UserSubAccountOptState.CannotConnectServer: info = "服务器连接失败,未能获取小号信息!"; break; case UserSubAccountOptState.Failed: info = "服务器异常,获取小号信息失败!"; break; case UserSubAccountOptState.InvalidOpt: info = "非法操作!与服务器连接断开,请稍后重试!"; break; case UserSubAccountOptState.Successed: break; } Invoke(() => { if (listResponse.State != UserSubAccountOptState.Successed) { MessageBoxEx.Show(this, info, "获取小号信息", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } sdgvSubAccountList.DataSource = listResponse.Data; }); }); }