Поделиться через


SqlCommand.ExecuteReaderAsync Метод

Определение

Перегрузки

ExecuteReaderAsync()

Асинхронная версия ExecuteReader() , которая отправляет CommandText в Connection и создает SqlDataReader . Сведения об исключениях передаются в возвращенном объекте Task.

ExecuteReaderAsync(CommandBehavior)

Асинхронная версия ExecuteReader(CommandBehavior) , которая отправляет CommandText в Connection и создает SqlDataReader . Сведения об исключениях передаются в возвращенном объекте Task.

ExecuteReaderAsync(CancellationToken)

Асинхронная версия ExecuteReader() , которая отправляет CommandText в Connection и создает SqlDataReader .

Токен отмены можно использовать для запроса отказа от операции до истечения времени ожидания команды. Сведения об исключениях передаются в возвращенном объекте Task.

ExecuteReaderAsync(CommandBehavior, CancellationToken)

Асинхронная версия ExecuteReader(CommandBehavior) , которая отправляет CommandText в Connection и создает маркер отмены SqlDataReader , который можно использовать для запроса на прекращение операции до истечения времени ожидания команды. Сведения об исключениях передаются в возвращенном объекте Task.

ExecuteReaderAsync()

Асинхронная версия ExecuteReader() , которая отправляет CommandText в Connection и создает SqlDataReader . Сведения об исключениях передаются в возвращенном объекте Task.

public:
 System::Threading::Tasks::Task<Microsoft::Data::SqlClient::SqlDataReader ^> ^ ExecuteReaderAsync();
public System.Threading.Tasks.Task<Microsoft.Data.SqlClient.SqlDataReader> ExecuteReaderAsync ();
override this.ExecuteReaderAsync : unit -> System.Threading.Tasks.Task<Microsoft.Data.SqlClient.SqlDataReader>
Public Function ExecuteReaderAsync () As Task(Of SqlDataReader)

Возвращаемое значение

Задача, представляющая асинхронную операцию.

Исключения

Объект , отличный SqlDbType от Binary или VarBinary , использовался, если Value для параметра задано значение Stream . Дополнительные сведения о потоковой передаче см. в разделе Поддержка потоковой передачи SqlClient.

-или-

Значение , отличное SqlDbType от Char, NChar, NVarChar, VarChar или Xml , использовалось, если Value для параметра задано значение TextReader .

-или-

Объект , отличный SqlDbType от XML , использовался, если Value для параметра задано значение XmlReader .

Недопустимое значение CommandBehavior.

Вызов ExecuteReaderAsync() более одного раза для того же экземпляра до завершения задачи.

-или-

Подключение SqlConnection, закрытое или удаленное во время операции потоковой передачи. Дополнительные сведения о потоковой передаче см. в разделе Поддержка потоковой передачи SqlClient.

SQL Server вернул ошибку во время выполнения текста команды.

-или-

Во время операции потоковой передачи истекло время ожидания. Дополнительные сведения о потоковой передаче см. в разделе Поддержка потоковой передачи SqlClient.

Произошла ошибка в объекте Stream или XmlReaderTextReader во время операции потоковой передачи. Дополнительные сведения о потоковой передаче см. в разделе Поддержка потоковой передачи SqlClient.

Объект Stream , XmlReader или TextReader был закрыт во время операции потоковой передачи. Дополнительные сведения о потоковой передаче см. в разделе Поддержка потоковой передачи SqlClient.

Комментарии

Дополнительные сведения об асинхронном программировании в поставщике данных платформа .NET Framework для SQL Server см. в статье Асинхронное программирование.

Примечание

Для длительных запросов на сервере рекомендуется использовать ExecuteReader из-за известной проблемы с отменой запросов с помощью маркера отмены. Кроме того, рассмотрите возможность отмены Cancel выполнения с помощью метода .

Применяется к

ExecuteReaderAsync(CommandBehavior)

Асинхронная версия ExecuteReader(CommandBehavior) , которая отправляет CommandText в Connection и создает SqlDataReader . Сведения об исключениях передаются в возвращенном объекте Task.

public:
 System::Threading::Tasks::Task<Microsoft::Data::SqlClient::SqlDataReader ^> ^ ExecuteReaderAsync(System::Data::CommandBehavior behavior);
public System.Threading.Tasks.Task<Microsoft.Data.SqlClient.SqlDataReader> ExecuteReaderAsync (System.Data.CommandBehavior behavior);
override this.ExecuteReaderAsync : System.Data.CommandBehavior -> System.Threading.Tasks.Task<Microsoft.Data.SqlClient.SqlDataReader>
Public Function ExecuteReaderAsync (behavior As CommandBehavior) As Task(Of SqlDataReader)

Параметры

behavior
CommandBehavior

Параметры для завершения инструкции и извлечения данных. Когда задано значениеDefault , ReadAsync(CancellationToken) считывает всю строку перед возвратом полной задачи.

Возвращаемое значение

Задача, представляющая асинхронную операцию.

Исключения

Объект , отличный SqlDbType от Binary или VarBinary , использовался, если Value для параметра задано значение Stream . Дополнительные сведения о потоковой передаче см. в разделе Поддержка потоковой передачи SqlClient.

-или-

Значение , отличное SqlDbType от Char, NChar, NVarChar, VarChar или Xml , использовалось, если Value для параметра задано значение TextReader .

-или-

Объект , отличный SqlDbType от XML , использовался, если Value для параметра задано значение XmlReader .

Недопустимое значение CommandBehavior.

Вызов ExecuteReaderAsync(CommandBehavior) более одного раза для того же экземпляра до завершения задачи.

-или- SqlConnection закрыт или удален во время операции потоковой передачи. Дополнительные сведения о потоковой передаче см. в разделе Поддержка потоковой передачи SqlClient.

SQL Server вернул ошибку во время выполнения текста команды.

-или-

Во время операции потоковой передачи истекло время ожидания. Дополнительные сведения о потоковой передаче см. в разделе Поддержка потоковой передачи SqlClient.

Произошла ошибка в объекте Stream или XmlReaderTextReader во время операции потоковой передачи. Дополнительные сведения о потоковой передаче см. в разделе Поддержка потоковой передачи SqlClient.

Объект Stream , XmlReader или TextReader был закрыт во время операции потоковой передачи. Дополнительные сведения о потоковой передаче см. в разделе Поддержка потоковой передачи SqlClient.

Комментарии

Дополнительные сведения об асинхронном программировании в поставщике данных платформа .NET Framework для SQL Server см. в статье Асинхронное программирование.

Применяется к

ExecuteReaderAsync(CancellationToken)

Асинхронная версия ExecuteReader() , которая отправляет CommandText в Connection и создает SqlDataReader .

Токен отмены можно использовать для запроса отказа от операции до истечения времени ожидания команды. Сведения об исключениях передаются в возвращенном объекте Task.

public:
 System::Threading::Tasks::Task<Microsoft::Data::SqlClient::SqlDataReader ^> ^ ExecuteReaderAsync(System::Threading::CancellationToken cancellationToken);
public System.Threading.Tasks.Task<Microsoft.Data.SqlClient.SqlDataReader> ExecuteReaderAsync (System.Threading.CancellationToken cancellationToken);
override this.ExecuteReaderAsync : System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.Data.SqlClient.SqlDataReader>
Public Function ExecuteReaderAsync (cancellationToken As CancellationToken) As Task(Of SqlDataReader)

Параметры

cancellationToken
CancellationToken

Инструкция отмены.

Возвращаемое значение

Задача, представляющая асинхронную операцию.

Исключения

Объект , отличный SqlDbType от Binary или VarBinary , использовался, если Value для параметра задано значение Stream . Дополнительные сведения о потоковой передаче см. в разделе Поддержка потоковой передачи SqlClient.

-или-

Значение , отличное SqlDbType от Char, NChar, NVarChar, VarChar или Xml , использовалось, если Value для параметра задано значение TextReader .

-или-

Объект , отличный SqlDbType от XML , использовался, если Value для параметра задано значение XmlReader .

Недопустимое значение CommandBehavior.

Вызов ExecuteReaderAsync(CommandBehavior, CancellationToken) более одного раза для того же экземпляра до завершения задачи.

-или-

Подключение SqlConnection, закрытое или удаленное во время операции потоковой передачи. Дополнительные сведения о потоковой передаче см. в разделе Поддержка потоковой передачи SqlClient.

SQL Server вернул ошибку во время выполнения текста команды.

-или-

Во время операции потоковой передачи истекло время ожидания. Дополнительные сведения о потоковой передаче см. в разделе Поддержка потоковой передачи SqlClient.

Произошла ошибка в объекте Stream или XmlReaderTextReader во время операции потоковой передачи. Дополнительные сведения о потоковой передаче см. в разделе Поддержка потоковой передачи SqlClient.

Объект Stream , XmlReader или TextReader был закрыт во время операции потоковой передачи. Дополнительные сведения о потоковой передаче см. в разделе Поддержка потоковой передачи SqlClient.

Комментарии

Дополнительные сведения об асинхронном программировании в поставщике данных платформа .NET Framework для SQL Server см. в статье Асинхронное программирование.

Применяется к

ExecuteReaderAsync(CommandBehavior, CancellationToken)

Асинхронная версия ExecuteReader(CommandBehavior) , которая отправляет CommandText в Connection и создает маркер отмены SqlDataReader , который можно использовать для запроса на прекращение операции до истечения времени ожидания команды. Сведения об исключениях передаются в возвращенном объекте Task.

public:
 System::Threading::Tasks::Task<Microsoft::Data::SqlClient::SqlDataReader ^> ^ ExecuteReaderAsync(System::Data::CommandBehavior behavior, System::Threading::CancellationToken cancellationToken);
public System.Threading.Tasks.Task<Microsoft.Data.SqlClient.SqlDataReader> ExecuteReaderAsync (System.Data.CommandBehavior behavior, System.Threading.CancellationToken cancellationToken);
override this.ExecuteReaderAsync : System.Data.CommandBehavior * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.Data.SqlClient.SqlDataReader>
Public Function ExecuteReaderAsync (behavior As CommandBehavior, cancellationToken As CancellationToken) As Task(Of SqlDataReader)

Параметры

behavior
CommandBehavior

Параметры для завершения инструкции и извлечения данных. Когда задано значениеDefault , ReadAsync(CancellationToken) считывает всю строку перед возвратом полной задачи.

cancellationToken
CancellationToken

Инструкция отмены.

Возвращаемое значение

Задача, представляющая асинхронную операцию.

Исключения

Объект , отличный SqlDbType от Binary или VarBinary , использовался, если Value для параметра задано значение Stream . Дополнительные сведения о потоковой передаче см. в разделе Поддержка потоковой передачи SqlClient.

-или-

Значение , отличное SqlDbType от Char, NChar, NVarChar, VarChar или Xml , использовалось, если Value для параметра задано значение TextReader .

-или-

Объект , отличный SqlDbType от XML , использовался, если Value для параметра задано значение XmlReader .

Недопустимое значение CommandBehavior.

Вызов ExecuteReaderAsync(CommandBehavior, CancellationToken) более одного раза для того же экземпляра до завершения задачи.

-или-

Подключение SqlConnection, закрытое или удаленное во время операции потоковой передачи. Дополнительные сведения о потоковой передаче см. в разделе Поддержка потоковой передачи SqlClient.

SQL Server вернул ошибку во время выполнения текста команды.

-или-

Во время операции потоковой передачи истекло время ожидания. Дополнительные сведения о потоковой передаче см. в разделе Поддержка потоковой передачи SqlClient.

Произошла ошибка в объекте Stream или XmlReaderTextReader во время операции потоковой передачи. Дополнительные сведения о потоковой передаче см. в разделе Поддержка потоковой передачи SqlClient.

Объект Stream , XmlReader или TextReader был закрыт во время операции потоковой передачи. Дополнительные сведения о потоковой передаче см. в разделе Поддержка потоковой передачи SqlClient.

Комментарии

Дополнительные сведения об асинхронном программировании в поставщике данных платформа .NET Framework для SQL Server см. в статье Асинхронное программирование.

Применяется к