asp.net – 使用DataPager而不检索每个请求的所有行
我有一个ListView,我正在数据绑定到这样的对象集合:
int total; List<Client> clientList = clientData.GetClients(criteria,pageNum,pageSize,out total); uxClientList.DataSource = clientList; uxClientList.DataBind(); 其中pageNum,pageSize和total参数有助于在数据访问层进行分页.到现在为止还挺好. 现在我可以在页面上抛出一个DataPager,将它指向ListView并获得一个不错的分页UX. There’s a little more to it when you’re binding programmatically instead of declaratively with a data source control,但问题在于DataPager期望每次都检索整个结果集,从中应该计算分页,因此它会将结果的单页返回为总可用记录并呈现为好像只有一页结果可用.换句话说,如果我们切换到GetClients的非分页版本,上面的场景适用于DataPager: List<Client> clientList = clientData.GetClients(criteria); uxClientList.DataSource = clientList; uxClientList.DataBind(); 显然,由于我们的数据访问层足以为我们提供一次检索页面的方法,因此最好每次检索所有记录.如果我们能够明确告知DataPager总可用记录,那么它仍然可以自动创建分页输出,但一次只需要一个页面就可以了. 我没有找到一个简单的方法来做到这一点,我没有在搜索中发现任何东西.诚然,我目前对DataPager的实现没有深刻的理解,所以希望我忽略了一些东西. 解决方法
你没有忽视任何事情.
处理大型结果集时,您需要关闭分页并添加自己的分页控件. 根据我的经验<< < > >>满足.无论如何,没有人超过第3页. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 如何部署/发布ASP.NET网站?
- asp.net – 实际文化是否与SQL相关联到CLR float-double转换
- asp.net – 如何使用jquery“jsonp”调用外部Web服务?
- ASP.NET AJAX工具包 – CalendarExtender在Postback上重置
- asp-classic – If子句未按预期工作
- Asp.net mvc3剃刀具有多个提交按钮
- asp.net-mvc – 必需属性“pageBaseType”未找到 – 启动我
- asp.net-mvc – 在多层应用程序中使用IoC时避免程序集引用
- asp.net – 如何修复此页面的状态信息无效,可能已损坏
- 如何将Ninject集成到ASP.NET Core 2.0 Web应用程序中?
- asp.net-mvc – 当模型绑定包含bool时,表单集合必
- asp.net – 如何逃避在IE上生成“意外量词”错误
- asp.net – 无法识别的配置节system.identityMod
- asp.net – 执行sql脚本而不是等待完成
- asp.net-web-api – 在WebApi和MVC项目之间共享S
- asp.net-web-api – OWIN中间件中的全局异常处理
- ASP .NET MVC 3 – 如何提交嵌套在html表单中的a
- asp.net-mvc – 窗口身份验证在MVC4中不起作用
- 【Asp.Net MVC+EF+三层架构】详解(三)MVC VS 三
- asp.net – 如何在使用Html.TextAreaFor时更改字