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


SqlCommand.ExecuteScalarAsync(CancellationToken) Метод

Определение

Асинхронная версия метода ExecuteScalar(), которая выполняет запрос асинхронно и возвращает первый столбец первой строки в наборе результатов, возвращаемых запросом. Такие же дополнительные столбцы также определены.

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

public:
 override System::Threading::Tasks::Task<System::Object ^> ^ ExecuteScalarAsync(System::Threading::CancellationToken cancellationToken);
public override System.Threading.Tasks.Task<object> ExecuteScalarAsync (System.Threading.CancellationToken cancellationToken);
override this.ExecuteScalarAsync : System.Threading.CancellationToken -> System.Threading.Tasks.Task<obj>
Public Overrides Function ExecuteScalarAsync (cancellationToken As CancellationToken) As Task(Of Object)

Параметры

cancellationToken
CancellationToken

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

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

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

Исключения

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

-или-

Если SqlDbType для параметра задано значение TextReader, кроме Char, NChar, NVarChar, VarChar или Xml, использовался объект , отличный от ValueChar, NChar, NVarChar, VarChar или Xml.

-или-

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

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

-или-

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

-или-

Context Connection=true задается в строке подключения.

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

-или-

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

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

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

Маркер отмены был отменен. Это исключение сохраняется в возвращаемой задаче.

Комментарии

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

Этот метод сохраняет в задаче все исключения, не относящиеся к использованию, которые может создавать синхронный аналог метода. Если исключение сохраняется в возвращаемой задаче, это исключение будет создано при ожидании задачи. Исключения использования, такие как ArgumentException, по-прежнему создаются синхронно. Хранимые исключения см. в разделе исключения, создаваемые ExecuteScalar().

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

См. также раздел