Bagikan melalui


NonRetryingExecutionStrategy.ExecuteAsync<TState,TResult> Metode

Definisi

Menjalankan operasi asinkron yang ditentukan dan mengembalikan hasilnya.

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)

Jenis parameter

TState

Jenis status.

TResult

Jenis hasil yang Task<TResult> dikembalikan oleh operation.

Parameter

state
TState

Status yang akan diteruskan ke operasi.

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

Fungsi yang mengembalikan tugas yang dimulai dari jenis TResult.

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

Delegasi yang menguji apakah operasi berhasil meskipun pengecualian dilemparkan.

cancellationToken
CancellationToken

Token pembatalan yang digunakan untuk membatalkan operasi coba lagi, tetapi bukan operasi yang sudah dalam penerbangan atau yang telah berhasil diselesaikan.

Mengembalikan

Task<TResult>

Tugas yang akan berjalan hingga selesai jika tugas asli berhasil diselesaikan (baik pertama kali atau setelah mencoba kembali kegagalan sementara). Jika tugas gagal dengan kesalahan non-sementara atau batas coba lagi tercapai, tugas yang dikembalikan akan menjadi rusak dan pengecualian harus diamati.

Penerapan

Pengecualian

Operasi belum berhasil setelah jumlah percobaan ulang yang dikonfigurasi.

Keterangan

Lihat Ketahanan koneksi dan percobaan ulang database untuk informasi dan contoh selengkapnya.

Berlaku untuk