SqlCommand.ExecuteNonQueryAsync(CancellationToken) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Асинхронная версия ExecuteNonQuery() , которая выполняет инструкцию Transact-SQL для подключения и возвращает количество затронутых строк. Токен отмены можно использовать для запроса отказа от операции до истечения времени ожидания команды. Сведения об исключениях передаются в возвращенном объекте Task.
public:
override System::Threading::Tasks::Task<int> ^ ExecuteNonQueryAsync(System::Threading::CancellationToken cancellationToken);
public override System.Threading.Tasks.Task<int> ExecuteNonQueryAsync (System.Threading.CancellationToken cancellationToken);
override this.ExecuteNonQueryAsync : System.Threading.CancellationToken -> System.Threading.Tasks.Task<int>
Public Overrides Function ExecuteNonQueryAsync (cancellationToken As CancellationToken) As Task(Of Integer)
Параметры
- cancellationToken
- CancellationToken
Инструкция отмены.
Возвращаемое значение
Задача, представляющая асинхронную операцию.
Исключения
Если SqlDbType для параметра задано значение Stream , отличное от Binary или VarBinary, использовалось Value значение . Дополнительные сведения о потоковой передаче см. в разделе Поддержка потоковой передачи SqlClient.
-или-
Если SqlDbType для параметра задано значение TextReader , кроме Char, NChar, NVarChar, VarChar или Xml, использовался объект , отличный от ValueChar, NChar, NVarChar, VarChar или Xml.
-или-
Объект , отличный SqlDbType от XML , использовался, когда Value для параметра задано значение XmlReader .
Вызов ExecuteNonQueryAsync(CancellationToken) более одного раза для того же экземпляра до завершения задачи.
-или-
Подключение SqlConnection, закрытое или удаленное во время операции потоковой передачи. Дополнительные сведения о потоковой передаче см. в разделе Поддержка потоковой передачи SqlClient.
SQL Server вернул ошибку во время выполнения текста команды.
-или-
Во время операции потоковой передачи истекло время ожидания. Дополнительные сведения о потоковой передаче см. в разделе Поддержка потоковой передачи SqlClient.
Ошибка в объекте Stream или XmlReaderTextReader во время операции потоковой передачи. Дополнительные сведения о потоковой передаче см. в разделе Поддержка потоковой передачи SqlClient.
Объект Stream или XmlReaderTextReader был закрыт во время операции потоковой передачи. Дополнительные сведения о потоковой передаче см. в разделе Поддержка потоковой передачи SqlClient.
Комментарии
Дополнительные сведения об асинхронном программировании в поставщике данных платформа .NET Framework для SQL Server см. в разделе Асинхронное программирование.
Примечание
Для длительных запросов на сервере рекомендуется использовать ExecuteNonQuery из-за известной проблемы с отменой запросов с помощью маркера отмены. Кроме того, рассмотрите возможность отмены выполнения с помощью Cancel метода .