Condividi tramite


Metodo DbExecutionStrategy.ExecuteAsync<TResult> (Func<Task<TResult>>, CancellationToken)

[Questa pagina è specifica della versione 6 di Entity Framework. La versione più recente è disponibile come pacchetto NuGet per "Entity Framework". Per ulteriori informazioni su Entity Framework, vedere la pagina msdn.com/data/ef.]

Esegue ripetutamente l'operazione asincrona specificata mentre soddisfa i criteri correnti per i tentativi.

Spazio dei nomi:  System.Data.Entity.Infrastructure
Assembly:  EntityFramework (in EntityFramework.dll)

Sintassi

'Dichiarazione
<SuppressMessageAttribute("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures")> _
Public Function ExecuteAsync(Of TResult) ( _
    operation As Func(Of Task(Of TResult)), _
    cancellationToken As CancellationToken _
) As Task(Of TResult)
'Utilizzo
Dim instance As DbExecutionStrategy 
Dim operation As Func(Of Task(Of TResult))
Dim cancellationToken As CancellationToken 
Dim returnValue As Task(Of TResult)

returnValue = instance.ExecuteAsync(operation, _
    cancellationToken)
[SuppressMessageAttribute("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures")]
public Task<TResult> ExecuteAsync<TResult>(
    Func<Task<TResult>> operation,
    CancellationToken cancellationToken
)
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1006:DoNotNestGenericTypesInMemberSignatures")]
public:
generic<typename TResult>
virtual Task<TResult>^ ExecuteAsync(
    Func<Task<TResult>^>^ operation, 
    CancellationToken cancellationToken
) sealed
[<SuppressMessageAttribute("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures")>]
abstract ExecuteAsync : 
        operation:Func<Task<'TResult>> * 
        cancellationToken:CancellationToken -> Task<'TResult> 
[<SuppressMessageAttribute("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures")>]
override ExecuteAsync : 
        operation:Func<Task<'TResult>> * 
        cancellationToken:CancellationToken -> Task<'TResult> 
JScript does not support generic types and methods.

Parametri di tipo

  • TResult
    Tipo di risultato dell'oggetto Task<TResult> restituito da operation.

Parametri

  • operation
    Tipo: System.Func<Task<TResult>>
    Funzione che restituisce un'attività avviata di tipo TResult.
  • cancellationToken
    Tipo: System.Threading.CancellationToken
    Token di annullamento utilizzato per annullare l'operazione di ripetizione, ma non le operazioni che sono già in corso o che sono state completate correttamente.

Valore restituito

Tipo: System.Threading.Tasks.Task<TResult>
Attività che verrà eseguita fino al completamento se l'attività originale viene portata a termine correttamente (la prima volta o dopo più tentativi).Se l'attività ha esito negativo con un errore non temporaneo o viene raggiunto il numero massimo consentito di tentativi, l'attività restituita darà un errore e l'eccezione dovrà essere osservata.

Implements

IDbExecutionStrategy.ExecuteAsync<TResult>(Func<Task<TResult>>, CancellationToken)

Eccezioni

Eccezione Condizione
RetryLimitExceededException

Se la strategia di ritardo dei tentativi determina che l'operazione non deve essere più rieseguita

InvalidOperationException

Se una transazione esistente viene rilevata e la strategia di esecuzione non la supporta.

InvalidOperationException

Se questa istanza è già usata per eseguire un'operazione.

Vedere anche

Riferimento

DbExecutionStrategy Classe

Overload ExecuteAsync

Spazio dei nomi System.Data.Entity.Infrastructure