DataAdapter 的Fill()方法;

本文介绍了一种使用 Fill 方法进行查询结果分页的方法,并提供了一个 C# 示例代码,展示了如何仅返回一页数据,同时减少资源消耗。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

查询结果分页是以较小数据子集(即页)的形式返回查询结果的过程。它通常用于以易于管理的小块区的形式向用户显示结果。  
   
  DataAdapter   提供了通过   Fill   方法的重载来仅返回一页数据的功能。但是,对于大量的查询结果,它可能并不是首选的分页方法,因为   DataAdapter   虽然仅使用所请求的记录来填充目标   DataTable   或   DataSet,但仍会使用返回整个查询的资源。若要在从数据源中返回一页数据时不使用返回整个查询所需的资源,请为查询指定附加条件,使返回的行数减少到只返回所需的行。  
   
  若要使用   Fill   方法返回一页数据,请指定   startRecord(它指定该数据页的第一个记录),并指定   maxRecords(它指定该数据页中的记录数)。  
   
  以下代码示例显示如何使用   Fill   方法来返回查询结果(页大小为   5   个记录)的第一页。  

public static DataTable getPageSize()
{
        int pageSize = 0;
        int maxPage = 5;
        SqlConnection conntection=new SqlConnection(ConfigurationManager.ConnectionString[''conString'].ToString());
        string sqlString = "select * from orders order by id desc";
        SqlCommad command = new SqlCommand("sqlString",connection);
        DataSet dataSet = new DataSet();
        SqlDataAdapeter adapter = new SqlDataAdapter(sqlString);
        adapter.Fill(dataSet,pageSize,maxPage,"myPageSize");
        return dataSet.Tables["myPageSize"];
}

.cs页面只需要调用他就可以了~这样确实比较方便,也解决了资源的浪费~
貌似aspager的分页插件就是这个原理~网上好象有用存储过程来分页的,想想也应该是,存储过程的那就更
适合我们的页面需求了~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值