powered by simpleCommunicator - 2.0.50     © 2025 Programmizd 02
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / DataReader.HasRows. Зачем?
9 сообщений из 9, страница 1 из 1
DataReader.HasRows. Зачем?
    #38623396
_andrews_.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не могу понять (найти объяснение) какой смысл использовать HasRows, если первый же Read() вернет false, и мы просто не войдем в цикл:

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
        if (reader.HasRows) // ЗАЧЕМ ЭТА ПРОВЕРКА ЗДЕСЬ?
        {
            while (reader.Read())
            {
                Console.WriteLine("{0}\t{1}", reader.GetInt32(0),
                    reader.GetString(1));
            }
        }
...
Рейтинг: 0 / 0
DataReader.HasRows. Зачем?
    #38623397
_andrews_.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
этот код взят из примера описания, как использовать метод HasRows() из msdn .

Но зачем вообще проверять на HasRows()?
...
Рейтинг: 0 / 0
DataReader.HasRows. Зачем?
    #38623401
bazile
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_andrews_., в таком коде проверка HasRows не нужна. Вообще свойство HasRows может пригодится если нужна отдельная логика для ситуации когда запрос ничего не вернул.
...
Рейтинг: 0 / 0
DataReader.HasRows. Зачем?
    #38623408
_andrews_.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
bazile,

спасибо. было подозрение, но всевозможные примеры, такого плана немного ввели в заблуждение.
...
Рейтинг: 0 / 0
DataReader.HasRows. Зачем?
    #38623411
bazile
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_andrews_.этот код взят из примера описания, как использовать метод HasRows() из msdn .
Этот обрезанный код ты хотел сказать так как полный пример выглядит так:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
if (reader.HasRows)
{
	while (reader.Read())
	{
		Console.WriteLine("{0}\t{1}", reader.GetInt32(0), reader.GetString(1));
	}
}
else
{
	Console.WriteLine("No rows found.");
}


Глядя на него нетрудно понять зачем и когда нужен HasRows.
...
Рейтинг: 0 / 0
DataReader.HasRows. Зачем?
    #38623449
_andrews_.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А это уже из книги "ADO.NET для профессионалов"
И здесь уже не понятно зачем этот HasRows. Поэтому и были сомнения. Может про произодительность что-то упустил, а может еще что-то..
...
Рейтинг: 0 / 0
DataReader.HasRows. Зачем?
    #38623458
bazile
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_andrews_., продолжения примера на следующей странице точно нет? :)
...
Рейтинг: 0 / 0
DataReader.HasRows. Зачем?
    #38623463
_andrews_.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
bazile,

)))
Нет.
...
Рейтинг: 0 / 0
DataReader.HasRows. Зачем?
    #38623490
bazile
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_andrews_., значит автор выбрал неудачный пример для демонстрации HasRows.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / DataReader.HasRows. Зачем?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]