API分页显示、删除、批量删除

一、DAL层

  1. 分页显示
    public List<DtoLogin> PageShow(string lname,out int totalcount,int pageindex=1,int pagesize = 2)
            {
                var query = db.LoginInfos.AsQueryable();
                if (!string.IsNullOrWhiteSpace(lname))
                {
                    query = query.Where(u => u.LName.Contains(lname));
                }
                totalcount = query.Count();
    
                query = query.OrderBy(u => u.LId).Skip((pageindex - 1) * pagesize).Take(pagesize);
    
                var list = from a in query
                           select new DtoLogin
                           {
                               LId = a.LId,
                               LName = a.LName,
                               LPwd = a.LPwd,
                               Picture = "http://localhost:51124/Images/" + a.Picture
                           };
                return list.ToList();
            }

     

  2. 删除
    public int Delete(int id)
            {
                var item = db.LoginInfos.FirstOrDefault(u => u.LId == id);
                if (item != null)
                {
                    db.LoginInfos.Remove(item);
                    return db.SaveChanges();
                }
                return 0;
            }

     

  3. 批量删除
    public int DelAll(string ids)
            {
                var item = db.LoginInfos.Where(u => ids.Contains(u.LId.ToString())).ToList();
                db.Users.RemoveRange(item);
                return db.SaveChanges();
            }

     

二、控制器

  1. 分页显示
    [HttpGet]
            public IHttpActionResult PageShow(string lname,int pageindex = 1, int pagesize = 2)
            {
                int totalcount = 0;
                var list = bll.PageShow(lname, out totalcount, pageindex, pagesize);
                return Json(new { totalcount, list }); 
            }

     

  2. 删除
    [HttpGet]
            public IHttpActionResult Delete(int id)
            {
                return Json(bll.Delete(id));
            }

     

  3. 批量删除
    [HttpGet]
            public IHttpActionResult DelAll(string ids)
            {
                return Json(bll.DelAll(ids));
            }

     

三、效果

 

 

posted @ 2021-09-10 21:10  疾风回荡寻真途  阅读(132)  评论(0)    收藏  举报