Пример #1
0
        public ActionResult Delete(string ids)
        {
            if (string.IsNullOrEmpty(ids))
            {
                return(Content("请选中要删除的数据!"));
            }
            #region shit删除
            ////拆分接收过来的ids
            //string[] strids = ids.Split(',');
            //foreach (string id in strids)
            //{
            //    userInfoService.Delete(new UserInfo() { ID = int.Parse(id) });

            //}
            #endregion

            //换成批量删除
            string[] strids = ids.Split(',');
            #region  一句代码可以代替下面的foreach代码
            //List<int> idList = strids.Select(int.Parse).ToList();
            //List<int> idList = new List<int>();
            //foreach (string id in strids)
            //{
            //    idList.Add(int.Parse(id));
            //}
            #endregion
            //完成删除
            //1.清楚该用户的角色关联
            foreach (var strid in strids)
            {
                int delUserId = int.Parse(strid);
                var userInfo  = userInfoService.GetEntity(u => u.ID == delUserId).FirstOrDefault();
                if (userInfo != null)
                {
                    //userInfo.R_User_Action.Clear();
                    userInfo.RoleInfo.Clear();//清除掉原有的角色
                }
            }
            //2.执行删除
            List <int> idList = strids.Select(int.Parse).ToList();

            int result = userInfoService.DeleteList(idList);
            if (result <= 0)
            {
                return(Content("error"));
            }
            return(Content("ok"));
        }