/// <summary> /// 按页取得千里眼信息 /// </summary> /// <param name="startNO">从第几条开始取</param> /// <param name="countNO">一共取几条</param> /// <returns>取得的千里眼信息集合</returns> public List<Clairvoyance> getAllClairvoyanceByPage(int startNO, int countNO) { int skipCount = (startNO - 1) * countNO; try { var results = (from clairvoyance in clairvoyances orderby clairvoyance.ID descending select clairvoyance).Skip(skipCount).Take(countNO); if (results != null && results.Count() > 0) { return results.ToList(); } else return null; } catch (Exception e) { Console.WriteLine("" + e.Message); return null; } } 难道我必须在DAL层来过滤吗,在这怎么过滤呀?
2 回答
喵喵时光机
TA贡献1846条经验 获得超7个赞
我还是觉得不够的时候再取一次(每次可以取比需要的稍多一点)比较好,有时候如果计算条件比较复杂,在SQL里面不好写就得写成存储过程了, 随便说一下,你可以把不需要的Remove掉而不用创建一个新的List再加进去,通过SkipWhile传一个匿名方法进去来实现. 如果不满足条件的记录出现比例较大或者符合条件的很少还是做到数据库里面好.
- 2 回答
- 0 关注
- 398 浏览
添加回答
举报
0/150
提交
取消