NHibernte 4.0.3版本中,使用Queryover().Where().OrderBy().Skip().Take()方法分页获取数据失败

Posted 姬如千泷

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了NHibernte 4.0.3版本中,使用Queryover().Where().OrderBy().Skip().Take()方法分页获取数据失败相关的知识,希望对你有一定的参考价值。

问题代码如下:

var result=repository.QueryOver<modal>()
              .Where(p=>p.Code==Code)
              .OrderBy(p=>p.ID).Asc
              .Skip(pageSize*(page-1))
              .Take(pageSize).List()

当设置page=1,pageSize=10时,获取数据正常;当设置的page大于1时,获取不到任何数据;原因尚未找到。

解决办法:修改代码如下

           var result= repository.QueryOver<modal>()
                    .Where(p => p.Code == Code)
                    .OrderBy(p=>p.ID).Asc
                    .RootCriteria.SetFirstResult((page - 1) * pageSize)
                    .SetMaxResults(page * pageSize).List()

 

以上是关于NHibernte 4.0.3版本中,使用Queryover().Where().OrderBy().Skip().Take()方法分页获取数据失败的主要内容,如果未能解决你的问题,请参考以下文章

第一章 响应式设计之Media Quer

AndroidStudio gradle插件和Gradle版本对应表

我的手机调用HMS Push Kit服务端API后收不到任何消息。 SDK版本为4.0.3.300

消息通知:fiddler导出JMeter脚本v4.4.0.3版本发布

csharp Crear grid sin quer en Json formas

创建新的 React 应用程序时出错(您正在运行 `create-react-app` 4.0.3,它落后于最新版本 (5.0.0))