SqlCommand.EndExecuteNonQuery(IAsyncResult) Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Completa l'esecuzione asincrona di un'istruzione Transact-SQL.
public:
int EndExecuteNonQuery(IAsyncResult ^ asyncResult);
public int EndExecuteNonQuery (IAsyncResult asyncResult);
member this.EndExecuteNonQuery : IAsyncResult -> int
Public Function EndExecuteNonQuery (asyncResult As IAsyncResult) As Integer
Parametri
- asyncResult
- IAsyncResult
Oggetto IAsyncResult restituito dalla chiamata a BeginExecuteNonQuery() .
Restituisce
Numero di righe interessate (lo stesso comportamento ExecuteNonQuery() di ).
Eccezioni
asyncResult
il parametro è null ( Nothing
in Microsoft Visual Basic)
EndExecuteNonQuery(IAsyncResult) è stato chiamato più volte per un'esecuzione di un singolo comando oppure il metodo non corrisponde al metodo di esecuzione, ad esempio il codice chiamato EndExecuteNonQuery(IAsyncResult) per completare l'esecuzione di una chiamata a BeginExecuteXmlReader() .
L'intervallo di tempo specificato in CommandTimeout è scaduto e l'operazione asincrona specificata con BeginExecuteNonQuery() non è stata completata.
-oppure-
In alcune situazioni, IAsyncResult può essere impostato suIsCompleted
Erroneamente. In questo caso, e se viene chiamato EndExecuteNonQuery(IAsyncResult), EndExecuteNonQuery potrebbe generare un errore SqlException se l'intervallo di tempo specificato in CommandTimeout è scaduto e l'operazione asincrona specificata con BeginExecuteNonQuery() non è stata completata. Per risolvere questo problema, è necessario aumentare il valore di CommandTimeout o ridurre il lavoro svolto dall'operazione asincrona.
Esempio
Per esempi che illustrano l'uso del EndExecuteNonQuery metodo , vedere BeginExecuteNonQuery().
Commenti
Quando si chiama BeginExecuteNonQuery() per eseguire un'istruzione Transact-SQL, è necessario chiamare EndExecuteNonQuery per completare l'operazione. Se il processo di esecuzione del comando non è ancora stato completato, questo metodo si blocca fino al completamento dell'operazione. Gli utenti possono verificare che il comando abbia completato l'operazione usando l'istanza IAsyncResult restituita dal BeginExecuteNonQuery() metodo . Se è stata specificata una routine di callback nella chiamata a BeginExecuteNonQuery(), è necessario chiamare questo metodo.