在使用ExecuteReader
方法查询数据库时,可以通过设置CommandBehavior.SequentialAccess
选项来实现分页读取。具体步骤如下:
string query = "SELECT * FROM tableName";
SqlCommand
对象,并设置CommandBehavior为SequentialAccess
:SqlCommand command = new SqlCommand(query, connection);
command.CommandBehavior = CommandBehavior.SequentialAccess;
SqlDataReader
对象:SqlDataReader reader = command.ExecuteReader();
Read
方法逐行读取数据:while(reader.Read())
{
// 读取数据
}
int pageSize = 10;
int currentPage = 1;
int currentIndex = 0;
while(reader.Read())
{
currentIndex++;
if(currentIndex > (currentPage - 1) * pageSize && currentIndex <= currentPage * pageSize)
{
// 处理当前页数据
}
}
通过以上步骤,可以实现在使用ExecuteReader
方法查询数据库时进行分页读取。