Скажем, я возвращаю DataReader и полностью перебирать его, используя этот код:Есть ли способ узнать, был ли обработан DataReader без вызова .Read()?
While Reader.Read
Dim x as string = Reader.GetString("x")
End While
Я хотел бы быть в состоянии определить, является ли оно или нет итерации после цикла While без вызова .read(). Причина в том, что .Read() автоматически переходит к следующей строке при ее вызове. Если есть обстоятельство, когда читатель не был полностью повторен, я не хочу, чтобы он продвигался к следующему ряду. Кажется, что есть какой-то способ узнать, прочитан ли читатель полностью.
Нет, нет способа проверить, используя непосредственно готовый DataReader, но посмотрите [этот вопрос] (http://stackoverflow.com/questions/7844355/how-to-detect-eof -on-datareader-in-c-sharp-without-executing-read) и как они хорошо решили проблему – Steve
Вы можете заполнить данные. Datareader не позволит вам вернуться. – Jaxedin
Стив, я считаю, что ваш ответ правильный. Вы должны преобразовать, чтобы ответить, чтобы я мог отметить его. – oscilatingcretin