Зачем использовать пустой цикл для datareader? - PullRequest
0 голосов
/ 02 июня 2019

Я делаю n-уровневое веб-приложение и создаю метод для добавления данных в конкретную базу данных.Мой вопрос заключается в том, что при установлении соединения с базой данных и выполнении запроса, почему существует цикл для объекта DataReader, в котором ничего нет.Вот мой метод:

while (myReader.Read())
{

}

Ответы [ 2 ]

3 голосов
/ 02 июня 2019

DataReader не извлекает данные сразу, а только начинает читать запись, когда вы вызываете метод Read.Фактически, метод read продвигает SqlDataReader к следующей записи, поэтому он возвращает true, если строк больше;в противном случае false.

while(dataReader.Read()) // true if there are more rows; otherwise false.
{
    // code to run
}

Вы можете прочитать об этом здесь в MSDN .

0 голосов
/ 02 июня 2019

myReader.Read () true, если строк больше;в противном случае ложь.

См .: https://docs.microsoft.com/en-us/dotnet/api/system.data.sqlclient.sqldatareader.read?view=netframework-4.8

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...