ExecutionStrategy.ExecuteAsync Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Sobrecargas
ExecuteAsync<TState,TResult>(TState, Func<DbContext,TState,CancellationToken, Task<TResult>>, Func<DbContext,TState,CancellationToken,Task<ExecutionResult<TResult>>>, CancellationToken) |
Executa a operação assíncrona especificada e retorna o resultado. |
ExecuteAsync<TState,TResult>(Func<TState,CancellationToken,Task<TResult>>, Func<TState,CancellationToken,Task<ExecutionResult<TResult>>>, TState, CancellationToken) |
Executa a operação assíncrona especificada e retorna o resultado. |
ExecuteAsync<TState,TResult>(TState, Func<DbContext,TState,CancellationToken, Task<TResult>>, Func<DbContext,TState,CancellationToken,Task<ExecutionResult<TResult>>>, CancellationToken)
- Origem:
- ExecutionStrategy.cs
- Origem:
- ExecutionStrategy.cs
- Origem:
- ExecutionStrategy.cs
- Origem:
- ExecutionStrategy.cs
- Origem:
- ExecutionStrategy.cs
- Origem:
- ExecutionStrategy.cs
- Origem:
- ExecutionStrategy.cs
- Origem:
- ExecutionStrategy.cs
- Origem:
- ExecutionStrategy.cs
Executa a operação assíncrona especificada e retorna o resultado.
public virtual System.Threading.Tasks.Task<TResult> ExecuteAsync<TState,TResult> (TState state, Func<Microsoft.EntityFrameworkCore.DbContext,TState,System.Threading.CancellationToken,System.Threading.Tasks.Task<TResult>> operation, Func<Microsoft.EntityFrameworkCore.DbContext,TState,System.Threading.CancellationToken,System.Threading.Tasks.Task<Microsoft.EntityFrameworkCore.Storage.ExecutionResult<TResult>>> verifySucceeded, System.Threading.CancellationToken cancellationToken = default);
public virtual System.Threading.Tasks.Task<TResult> ExecuteAsync<TState,TResult> (TState state, Func<Microsoft.EntityFrameworkCore.DbContext,TState,System.Threading.CancellationToken,System.Threading.Tasks.Task<TResult>> operation, Func<Microsoft.EntityFrameworkCore.DbContext,TState,System.Threading.CancellationToken,System.Threading.Tasks.Task<Microsoft.EntityFrameworkCore.Storage.ExecutionResult<TResult>>>? verifySucceeded, System.Threading.CancellationToken cancellationToken = default);
abstract member ExecuteAsync : 'State * Func<Microsoft.EntityFrameworkCore.DbContext, 'State, System.Threading.CancellationToken, System.Threading.Tasks.Task<'Result>> * Func<Microsoft.EntityFrameworkCore.DbContext, 'State, System.Threading.CancellationToken, System.Threading.Tasks.Task<Microsoft.EntityFrameworkCore.Storage.ExecutionResult<'Result>>> * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Result>
override this.ExecuteAsync : 'State * Func<Microsoft.EntityFrameworkCore.DbContext, 'State, System.Threading.CancellationToken, System.Threading.Tasks.Task<'Result>> * Func<Microsoft.EntityFrameworkCore.DbContext, 'State, System.Threading.CancellationToken, System.Threading.Tasks.Task<Microsoft.EntityFrameworkCore.Storage.ExecutionResult<'Result>>> * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Result>
Public Overridable Function ExecuteAsync(Of TState, TResult) (state As TState, operation As Func(Of DbContext, TState, CancellationToken, Task(Of TResult)), verifySucceeded As Func(Of DbContext, TState, CancellationToken, Task(Of ExecutionResult(Of TResult))), Optional cancellationToken As CancellationToken = Nothing) As Task(Of TResult)
Parâmetros de tipo
- TState
O tipo do estado.
- TResult
O tipo de resultado do Task<TResult> retornado por operation
.
Parâmetros
- state
- TState
O estado que será passado para a operação.
- operation
- Func<DbContext,TState,CancellationToken,Task<TResult>>
Uma função que retorna uma tarefa iniciada do tipo TResult
.
- verifySucceeded
- Func<DbContext,TState,CancellationToken,Task<ExecutionResult<TResult>>>
Um delegado que testa se a operação foi bem-sucedida mesmo que uma exceção tenha sido gerada.
- cancellationToken
- CancellationToken
Um token de cancelamento usado para cancelar a operação de repetição, mas não operações que já estão em versão de pré-lançamento ou que já foram concluídas com êxito.
Retornos
Uma tarefa que será executada até a conclusão se a tarefa original for concluída com êxito (na primeira vez ou depois de tentar novamente falhas transitórias). Se a tarefa falhar com um erro não transitório ou o limite de repetição for atingido, a tarefa retornada ficará com falha e a exceção deverá ser observada.
Implementações
Exceções
A operação não foi bem-sucedida após o número configurado de novas tentativas.
Se o padrão CancellationToken for cancelado.
Comentários
Consulte Resiliência de conexão e repetições de banco de dados para obter mais informações e exemplos.
Aplica-se a
ExecuteAsync<TState,TResult>(Func<TState,CancellationToken,Task<TResult>>, Func<TState,CancellationToken,Task<ExecutionResult<TResult>>>, TState, CancellationToken)
Executa a operação assíncrona especificada e retorna o resultado.
public virtual System.Threading.Tasks.Task<TResult> ExecuteAsync<TState,TResult> (Func<TState,System.Threading.CancellationToken,System.Threading.Tasks.Task<TResult>> operation, Func<TState,System.Threading.CancellationToken,System.Threading.Tasks.Task<Microsoft.EntityFrameworkCore.Storage.ExecutionResult<TResult>>> verifySucceeded, TState state, System.Threading.CancellationToken cancellationToken = default);
abstract member ExecuteAsync : Func<'State, System.Threading.CancellationToken, System.Threading.Tasks.Task<'Result>> * Func<'State, System.Threading.CancellationToken, System.Threading.Tasks.Task<Microsoft.EntityFrameworkCore.Storage.ExecutionResult<'Result>>> * 'State * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Result>
override this.ExecuteAsync : Func<'State, System.Threading.CancellationToken, System.Threading.Tasks.Task<'Result>> * Func<'State, System.Threading.CancellationToken, System.Threading.Tasks.Task<Microsoft.EntityFrameworkCore.Storage.ExecutionResult<'Result>>> * 'State * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Result>
Public Overridable Function ExecuteAsync(Of TState, TResult) (operation As Func(Of TState, CancellationToken, Task(Of TResult)), verifySucceeded As Func(Of TState, CancellationToken, Task(Of ExecutionResult(Of TResult))), state As TState, Optional cancellationToken As CancellationToken = Nothing) As Task(Of TResult)
Parâmetros de tipo
- TState
O tipo do estado.
- TResult
O tipo de resultado do Task<TResult> retornado por operation
.
Parâmetros
- operation
- Func<TState,CancellationToken,Task<TResult>>
Uma função que retorna uma tarefa iniciada do tipo TResult
.
- verifySucceeded
- Func<TState,CancellationToken,Task<ExecutionResult<TResult>>>
Um delegado que testa se a operação foi bem-sucedida mesmo que uma exceção tenha sido gerada.
- state
- TState
O estado que será passado para a operação.
- cancellationToken
- CancellationToken
Um token de cancelamento usado para cancelar a operação de repetição, mas não operações que já estão em versão de pré-lançamento ou que já foram concluídas com êxito.
Retornos
Uma tarefa que será executada até a conclusão se a tarefa original for concluída com êxito (na primeira vez ou depois de tentar novamente falhas transitórias). Se a tarefa falhar com um erro não transitório ou o limite de repetição for atingido, a tarefa retornada ficará com falha e a exceção deverá ser observada.
Implementações
Exceções
Gerada se a operação não tiver sido bem-sucedida após o número configurado de repetições.
Aplica-se a
Entity Framework