ObjectDataSource如何获取总记录数

问题描述

在网上看到很多ObjectDataSource自定义的分页代码,不知道如何才能获取ObjectDataSource的SelectCountMethod设置的方法查询数据表的总记录数?

解决方案

解决方案二:
存储过程中用输出型参数计算输出,逻辑层的方法用out类型参数输出!!
解决方案三:
如何实现呢?有没有简单的例子?
解决方案四:
手头还真没有现成的例子,好久没写了,这只提供个思路,你Google一下,或等其它高手帮讨论一下~
解决方案五:
ADO.NET直接通过Sql的selectcount(*)fromtab来查询结果。
解决方案六:
引用4楼fangxinggood的回复:

ADO.NET直接通过Sql的selectcount(*)fromtab来查询结果。

sql语句的写法我知道,我在问ObjectDataSource如何获取
解决方案七:
ObjectDataSource还不是要写sql。。。
解决方案八:
ObjectDataSource的功能本身只是返回任意对象(特别是自定义类型,例如可以把“总记录数、某个片段记录”两字段封装到一个对象中),ObjectDataSource的功能本身的重点是为绑定控件与底层数据中间插入中间件层次,而查询数据库的问题,你该如何查询就如何查询,你完全可以在SelectCountMethod属性所对应的BLL方法中先去用return100;

语句返回一个假数据,来调试高层次的界面代码。等调试通过,再重构底层这种完全与ObjectDataSource无关的所谓数据库查询代码。
解决方案九:
也҉许҉你҉不҉习҉惯҉,҉但҉是҉其҉实҉那҉才҉是҉真҉正҉的҉分҉层҉迭҉代҉式҉开҉发҉,҉使҉用҉逐҉步҉逼҉近҉的҉开҉发҉方҉式҉,҉而҉不҉是҉从҉一҉开҉始҉就҉纠҉结҉于҉最҉终҉结҉果҉:҉1.首先在“ObjectDataSource的SelectCountMethod设置的方法”中写return1000,然后就不纠缠底层而调试高层。2.然后重构“ObjectDataSource的SelectCountMethod设置的方法”中的代码,使其访问数据库查询真实结果。3.然后再次重构同一个BLL方法中的代码,使用数据缓存技术,使得重复查询sql时直接返回结果而不用访问数据库。
解决方案十:
sp1234说得很好,可是我看不懂
解决方案十一:
完整的代码和例子http://www.codeproject.com/Articles/42043/Optimized-Paging-and-Sorting-using-Object-Data-Sou
解决方案十二:
引用10楼net_lover的回复:

完整的代码和例子http://msdn.microsoft.com/zh-cn/library/system.web.ui.webcontrols.objectdatasource.selectcountmethod.aspxhttp://www.codeproject.com/Articles/42043/Optimized-Paging-and-Sorting-using-Obje……

我看看
解决方案十三:
http://blog.csdn.net/lyshrine/article/details/6820609我觉得这个不错
解决方案十四:
objectdatasource的selected事件测试这个,然后推一下。DataTabledt=(DataTable)e.ReturnValue;if(dt==null){LabelNum.Text="0";}else{LabelNum.Text=dt.Rows.Count.ToString();}

时间: 2024-10-27 03:21:43

ObjectDataSource如何获取总记录数的相关文章

如何取得ObjectDataSource查询得到的总记录数

问题描述 使用ObjectDataSource自定义分页,设置了EnablePaging="True",SelectCountMethod="SelectCountRows",分页正常.现在的问题是我需要取得ObjectDataSource的总页数与总记录数,如何取到这两个值???部分代码:<asp:GridViewID="GridView1"runat="server"AllowPaging="True&qu

listview分页加载,获取总条数

问题描述 listview分页加载,获取总条数 listview访问后台数据库进行分页加载,怎么得到数据的总条数,然后对其进行判断分页加载.总条数是需要后台服务器传过来的么,还是-- 解决方案 如果要获取总条数 都是要从服务器传过来,.

java读查询数据总记录数

 代码如下 复制代码 Statement stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY); ResultSet rs = stmt.executeQuery(sql); rs.last(); int length = rs.getRow(); length的值就是行数了.如果在获取了行数后,还需要继续使用当前数据集rs,则需要运行rs.beforeFirst();将

mssql 存储过程分页(同时返回总页数)

mssql 存储过程分页(同时返回总页数) 没有MySql般方便的limit分页,在MSSQL中需要分页查询数据的话,就只好写存储过程了... not in方式的分页性能差,创建变量表的方式相对来说,应该要好些.(MSSQL2000) 之前都是获取分页数据.获取数据总数分开写,也就是做两次查询. 某天突然想了想,干脆把这两步操作都写到分页查询里,返回分页数据的同时,把数据总数也返回. 这么做有什么好处呢? 1.减少一次数据库教程请求. 2.查询条件很多时,就只需拼一次SQL了. 3.方便维护 4

swftools-java 中使用FlexPaper分页加载获得总页数

问题描述 java 中使用FlexPaper分页加载获得总页数 java项目中用FlexPaper + swfTools 加载pdf格式的文档 分页时执行: C:SWFToolspdf2swf.exe Paper.pdf -o Paper%.swf -f -T 9 -t -s storeallcharacters FlexPaper控件配置加载SwfFile的地方,采用: {filename[*,padding],total pages} 但怎样获得总页数(total pages)? 解决方案

|zyciis| 为什么我的这条存储过程返回不了记录数 谢谢

问题描述 CREATEPROCsp_PageView@tbnamesysname,--要分页显示的表名@FieldKeynvarchar(1000),--用于定位记录的主键(惟一键)字段,可以是逗号分隔的多个字段@PageCurrentint=1,--要显示的页码@PageSizeint=10,--每页的大小(记录数)@FieldShownvarchar(1000)='',--以逗号分隔的要显示的字段列表,如果不指定,则显示所有字段@FieldOrdernvarchar(1000)='',--以

mysql获取group by的总记录行数另类方法_Mysql

mysql获取group by内部可以获取到某字段的记录分组统计总数,而无法统计出分组的记录数. mysql的SQL_CALC_FOUND_ROWS 使用 获取查询的行数 在很多分页的程序中都这样写: 代码如下 SELECT COUNT(*) from `table` WHERE ......; 查出符合条件的记录总数 代码如下 SELECT * FROM `table` WHERE ...... limit M,N; 查询当页要显示的数据 这样的语句可以改成: 代码如下 SELECT SQL_

mysql获取group by的总记录行数方法

mysql获取group by内部可以获取到某字段的记录分组统计总数,而无法统计出分组的记录数. mysql的SQL_CALC_FOUND_ROWS 使用 获取查询的行数 在很多分页的程序中都这样写:  代码如下 复制代码 SELECT COUNT(*) from `table` WHERE ......;   查出符合条件的记录总数    代码如下 复制代码 SELECT * FROM `table` WHERE ...... limit M,N; 查询当页要显示的数据 这样的语句可以改成:

C#利用Office组件如何获取Word中某一节的总页数

问题描述 C#利用Office组件操作Word,我已经知道如何获取文档总页数:intpages=myWordDoc.ComputeStatistics(WdStatistic.wdStatisticPages,refNothing);现在我要获取的是分节文档中某一节的页数,该如何实现? 解决方案 解决方案二:office组件很少用带局限性,可以用这个插件aspose,操作word还是很方便