示例#1
0
        void BtnConfirm_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                var item = ListBoxRoles.SelectedItem as RoleItem;
                if (item == null)
                {
                    return;
                }
                var roleInfo = item.Info;
                if (roleInfo == null)
                {
                    return;
                }
                CurrentApp.Session.RoleInfo = roleInfo;
                CurrentApp.Session.RoleID   = roleInfo.ID;

                #region 通知角色变更

                try
                {
                    WebRequest webRequest = new WebRequest();
                    webRequest.Session = CurrentApp.Session;
                    webRequest.Code    = (int)RequestCode.SCGlobalSettingChanged;
                    webRequest.ListData.Add(ConstValue.GS_KEY_PARAM_ROLE);
                    webRequest.ListData.Add(roleInfo.ID.ToString());
                    webRequest.ListData.Add(roleInfo.Name);
                    webRequest.ListData.Add(string.Format("1"));        //“1” 代表是登录时选择的角色,空或“1” 代表登录后切换角色(见UMPS1201的ChangeRole)
                    CurrentApp.PublishEvent(webRequest);
                }
                catch (Exception ex)
                {
                    CurrentApp.WriteLog("ChangeRole",
                                        string.Format("Send change role notification fail.\t{0}", ex.Message));
                }

                #endregion

                mOptResult = RESULT_SUCC;
                if (PageParent != null)
                {
                    PageParent.OnChangeRoleResult(mOptResult);
                }
            }
            catch (Exception ex)
            {
                ShowException(ex.Message);
            }
        }