1 int pollid = poll.Where(f => f.PollID < CurrentId).OrderByDescending(o => o.PollID).FirstOrDefault().PollID; //上一条 2 3 int pollid = poll.Where(f => f.PollID > CurrentId).OrderByDescending(o => o.PollID).LastOrDefault().PollID; //下一条
查找数据库上一条下一条
首先根据数据库hotelid字段不同
//查找同一个id字段有多少条数据 比如我们当前这条数据是6
var jddhlist = db.jddhgl.Where(u => u.hotelid == hotelid).ToList();
if(jddhlist.Count > 1)
{
var cxpx = px;
var upone = jddhlist.Where(u => u.px < cxpx).OrderByDescending(o => o.px).FirstOrDefault(); //上一条
var bpxcx = upone.px;//查找下一条是7
jddhgl a = jddhlist.FirstOrDefault(u => u.px == cxpx);//查询到对应id
jddhgl b = jddhlist.FirstOrDefault(u => u.px == bpxcx);//查询到对应id
a.px = cxpx + 1;
b.px = cxpx;//赋值
db.Entry(a).State = System.Data.Entity.EntityState.Modified;
//db.SaveChanges();//保存一次
//然后找到-1的那条数据 px+1;
db.Entry(b).State = System.Data.Entity.EntityState.Modified;
var l = db.SaveChanges();
if (l > 0)
{
array["yz"] = true;
}
else { array["yz"] = false; }
}
==========================同理上一条数据========================
var upone = jddhlist.Where(u => u.px > cxpx).OrderByDescending(o => o.px).LastOrDefault();//下一条
//排序设置 public ActionResult yhpxcx(int cxid) { int pollid = db.yhxxb.Where(f => f.id < cxid).OrderByDescending(o => o.id).FirstOrDefault().px; //px为你要查询上一条中的某一个字段 上一条 JObject array = new JObject(); array["previd"] = pollid; return Content(array.ToString()); }
获取上一条和下一条数据的方法
继续更新。。。。。。。。。。。
查询 当前数据段中最大的一个 字段id 不管是id字段 还说其他 int类型 序列号字段
var kl = db.yhxxb.ToList(); //判断数据库列表总数量 var l = kl.Count(); var maxs = 0; if (l > 0) { maxs = db.yhxxb.Max(u => u.px); }