public JsonResult IndexData() { string json = ""; using (StreamReader sr = new StreamReader(Request.InputStream)) { json = HttpUtility.UrlDecode(sr.ReadLine()); } JObject paramJson = JsonConvert.DeserializeObject(json) as JObject; string City = LCookie.GetCity(); using (EFDB db = new EFDB()) { var b = db.ShopProject.GroupJoin(db.Shop, l => l.ShopGid, j => j.Gid, (l, j) => new { l.AddTime, l.Project, l.ShopGid, j.FirstOrDefault().Picture, j.FirstOrDefault().Name, j.FirstOrDefault().Sort, j.FirstOrDefault().Show, j.FirstOrDefault().State, j.FirstOrDefault().City }).Where(l => l.Show == 1 && l.State == 2).DistinctBy(l => new { l.ShopGid }).AsQueryable(); if (City != "全国") { b = b.Where(l => l.City == City); } if (paramJson["Project"].ToString() != "00") { int Project = int.Parse(paramJson["Project"].ToString()); b = b.Where(l => l.Project == Project); } int pageindex = Int32.Parse(paramJson["pageindex"].ToString()); int pagesize = Int32.Parse(paramJson["pagesize"].ToString()); return(Json(new AjaxResult(new { other = "", count = b.Count(), pageindex, list = b.OrderBy(l => l.Sort).ThenByDescending(l => l.AddTime).Skip(pagesize * (pageindex - 1)).Take(pagesize).ToList() }))); } }