Partager via


NonRetryingExecutionStrategy.ExecuteAsync<TState,TResult> Méthode

Définition

Exécute l’opération asynchrone spécifiée et retourne le résultat.

public 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 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 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)

Paramètres de type

TState

Type de l’état.

TResult

Type de résultat du Task<TResult> retourné par operation.

Paramètres

state
TState

État qui sera passé à l’opération.

operation
Func<DbContext,TState,CancellationToken,Task<TResult>>

Fonction qui retourne une tâche démarrée de type TResult.

verifySucceeded
Func<DbContext,TState,CancellationToken,Task<ExecutionResult<TResult>>>

Délégué qui teste si l’opération a réussi même si une exception a été levée.

cancellationToken
CancellationToken

Jeton d’annulation utilisé pour annuler l’opération de nouvelle tentative, mais pas les opérations qui sont déjà en cours d’exécution ou qui se sont déjà terminées avec succès.

Retours

Task<TResult>

Tâche qui s’exécute jusqu’à l’achèvement si la tâche d’origine se termine correctement (soit la première fois, soit après une nouvelle tentative d’échec temporaire). Si la tâche échoue avec une erreur non temporaire ou si la limite de nouvelles tentatives est atteinte, la tâche retournée devient défectueuse et l’exception doit être observée.

Implémente

Exceptions

L’opération n’a pas réussi après le nombre configuré de nouvelles tentatives.

Remarques

Pour plus d’informations et d’exemples, consultez Résilience de connexion et nouvelles tentatives de base de données.

S’applique à