dr.Read();
는 조건이 만족되면 처음부터 다시 읽기 시작하는 방법? 같은 뭔가 :DataReader가 조건에서 처음부터 다시 읽기를 시작하는 방법은 무엇입니까?
sqlDataReader dr = command.ExecuteReader();
for(int i=0; dr.Read() ; i++){
if(condition){
//let dr.Read() start reading from the beginning
}
}
dr.Read();
는 조건이 만족되면 처음부터 다시 읽기 시작하는 방법? 같은 뭔가 :DataReader가 조건에서 처음부터 다시 읽기를 시작하는 방법은 무엇입니까?
sqlDataReader dr = command.ExecuteReader();
for(int i=0; dr.Read() ; i++){
if(condition){
//let dr.Read() start reading from the beginning
}
}
수 없습니다.
*DataReader
클래스는 forward-only 이터레이터입니다.
대신에, 당신은 당신이 할 수있는 List<T>
(또는 DataTable
)의 결과
다시 시작하는 유일한 방법은 ExecuteReader()
와 새로운 독자를 잡아 것입니다.
를 저장할 수있는 첫 번째 다시 초기화 한 후 dr.close();
를 사용하여 DataReader를 닫아.
If(condition)
{
dr.close();
dr=command.ExecuteReader();
}
여기서 command는 MySqlCommand
개체입니다.
'dr'의 유형은 무엇입니까? – Dirk
@Dirk 아마도 태그 된'SqlDataReader' 일 것입니다. --_-- –
'DataReader'는 전달 전용입니다. –