如果条件满足,如何让dr.Read();
从头开始重读?
类似的东西:
sqlDataReader dr = command.ExecuteReader();
for(int i=0; dr.Read() ; i++){
if(condition ){
//let dr.Read() start reading from the beginning
}
}
答案 0 :(得分:19)
你不能。
*DataReader
类是仅向前迭代器。
相反,您可以将结果存储在List<T>
(或DataTable
)
答案 1 :(得分:3)
重新启动它的唯一方法是使用ExecuteReader()
抓取新的阅读器。
答案 2 :(得分:1)
您可以先使用dr.close();
关闭datareader然后重新初始化它。
If(condition)
{
dr.close();
dr=command.ExecuteReader();
}
其中command是MySqlCommand
对象。