Bagikan melalui


SqlServerRetryingExecutionStrategy Kelas

Definisi

Implementasi IExecutionStrategy untuk mencoba kembali eksekusi yang gagal pada SQL Server.

public class SqlServerRetryingExecutionStrategy : Microsoft.EntityFrameworkCore.Storage.ExecutionStrategy
type SqlServerRetryingExecutionStrategy = class
    inherit ExecutionStrategy
Public Class SqlServerRetryingExecutionStrategy
Inherits ExecutionStrategy
Warisan
SqlServerRetryingExecutionStrategy

Keterangan

Strategi ini secara khusus disesuaikan dengan SQL Server (termasuk Azure SQL). Ini telah dikonfigurasi sebelumnya dengan nomor kesalahan untuk kesalahan sementara yang dapat dicoba kembali. Nomor kesalahan tambahan untuk diulangi juga dapat disediakan.

Masa pakai layanan adalah Scoped. Ini berarti bahwa setiap DbContext instans akan menggunakan instans layanan ini sendiri. Implementasi dapat bergantung pada layanan lain yang terdaftar dengan masa pakai apa pun. Implementasinya tidak perlu aman untuk utas.

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

Konstruktor

SqlServerRetryingExecutionStrategy(DbContext)

Membuat instans baru .SqlServerRetryingExecutionStrategy

SqlServerRetryingExecutionStrategy(DbContext, Int32)

Membuat instans baru .SqlServerRetryingExecutionStrategy

SqlServerRetryingExecutionStrategy(DbContext, Int32, TimeSpan, ICollection<Int32>)

Membuat instans baru .SqlServerRetryingExecutionStrategy

SqlServerRetryingExecutionStrategy(DbContext, Int32, TimeSpan, IEnumerable<Int32>)

Membuat instans baru .SqlServerRetryingExecutionStrategy

SqlServerRetryingExecutionStrategy(ExecutionStrategyContext)

Membuat instans baru .SqlServerRetryingExecutionStrategy

SqlServerRetryingExecutionStrategy(ExecutionStrategyContext, Int32)

Membuat instans baru .SqlServerRetryingExecutionStrategy

SqlServerRetryingExecutionStrategy(ExecutionStrategyContext, Int32, TimeSpan, ICollection<Int32>)

Membuat instans baru .SqlServerRetryingExecutionStrategy

SqlServerRetryingExecutionStrategy(ExecutionStrategyDependencies)

Membuat instans baru .SqlServerRetryingExecutionStrategy

SqlServerRetryingExecutionStrategy(ExecutionStrategyDependencies, IEnumerable<Int32>)

Membuat instans baru .SqlServerRetryingExecutionStrategy

SqlServerRetryingExecutionStrategy(ExecutionStrategyDependencies, Int32)

Membuat instans baru .SqlServerRetryingExecutionStrategy

SqlServerRetryingExecutionStrategy(ExecutionStrategyDependencies, Int32, TimeSpan, ICollection<Int32>)

Membuat instans baru .SqlServerRetryingExecutionStrategy

SqlServerRetryingExecutionStrategy(ExecutionStrategyDependencies, Int32, TimeSpan, IEnumerable<Int32>)

Membuat instans baru .SqlServerRetryingExecutionStrategy

Bidang

DefaultMinDelayThrottling

Penundaan waktu minimum default antara percobaan ulang untuk kesalahan pembatasan.

Properti

AdditionalErrorNumbers

Nomor kesalahan SQL tambahan yang harus dianggap sementara.

Context

Konteks di mana operasi akan dipanggil.

(Diperoleh dari ExecutionStrategy)
Dependencies

Dependensi untuk layanan ini.

(Diperoleh dari ExecutionStrategy)
ExceptionsEncountered

Daftar pengecualian yang menyebabkan operasi dicoba kembali sejauh ini.

(Diperoleh dari ExecutionStrategy)
Logger

Pencatat untuk ini ExecutionStrategy.

(Diperoleh dari ExecutionStrategy)
MaxRetryCount

Jumlah maksimum upaya coba lagi.

(Diperoleh dari ExecutionStrategy)
MaxRetryDelay

Penundaan maksimum antara percobaan kembali.

(Diperoleh dari ExecutionStrategy)
Random

Generator angka pseudo-random yang dapat digunakan untuk memvariasikan penundaan antara percobaan ulang.

(Diperoleh dari ExecutionStrategy)
RetriesOnFailure

Menunjukkan apakah ini IExecutionStrategy mungkin mencoba kembali eksekusi setelah kegagalan.

(Diperoleh dari ExecutionStrategy)

Metode

Execute<TState,TResult>(Func<TState,TResult>, Func<TState,ExecutionResult<TResult>>, TState)

Menjalankan operasi yang ditentukan dan mengembalikan hasilnya.

(Diperoleh dari ExecutionStrategy)
Execute<TState,TResult>(TState, Func<DbContext,TState,TResult>, Func<DbContext,TState,ExecutionResult<TResult>>)

Menjalankan operasi yang ditentukan dan mengembalikan hasilnya.

(Diperoleh dari ExecutionStrategy)
ExecuteAsync<TState,TResult>(Func<TState,CancellationToken,Task<TResult>>, Func<TState,CancellationToken,Task<ExecutionResult<TResult>>>, TState, CancellationToken)

Menjalankan operasi asinkron yang ditentukan dan mengembalikan hasilnya.

(Diperoleh dari ExecutionStrategy)
ExecuteAsync<TState,TResult>(TState, Func<DbContext,TState,CancellationToken, Task<TResult>>, Func<DbContext,TState,CancellationToken,Task<ExecutionResult<TResult>>>, CancellationToken)

Menjalankan operasi asinkron yang ditentukan dan mengembalikan hasilnya.

(Diperoleh dari ExecutionStrategy)
ExecuteInTransaction<TState,TResult>(Func<TState,TResult>, Func<TState,Boolean>, TState)

Menjalankan operasi yang ditentukan dalam transaksi dan mengembalikan hasilnya setelah menerapkannya.

(Diperoleh dari ExecutionStrategy)
ExecuteInTransactionAsync<TState,TResult>(Func<TState,CancellationToken, Task<TResult>>, Func<TState,CancellationToken,Task<Boolean>>, TState, CancellationToken)

Menjalankan operasi asinkron yang ditentukan dan mengembalikan hasilnya.

(Diperoleh dari ExecutionStrategy)
GetNextDelay(Exception)

Menentukan apakah operasi harus dicoba ulang dan penundaan sebelum upaya berikutnya.

OnFirstExecution()

Metode yang dipanggil sebelum eksekusi operasi pertama

(Diperoleh dari ExecutionStrategy)
OnRetry()

Metode yang dipanggil sebelum mencoba kembali eksekusi operasi

(Diperoleh dari ExecutionStrategy)
ShouldRetryOn(Exception)

Menentukan apakah pengecualian yang ditentukan mewakili kegagalan sementara yang dapat dikompensasi dengan coba lagi. Pengecualian tambahan untuk mencoba kembali dapat diteruskan ke konstruktor.

ShouldVerifySuccessOn(Exception)

Menentukan apakah pengecualian yang ditentukan dapat dilemparkan setelah eksekusi berhasil.

(Diperoleh dari ExecutionStrategy)

Metode Ekstensi

Execute(IExecutionStrategy, Action)

Menjalankan operasi yang ditentukan.

Execute<TState>(IExecutionStrategy, TState, Action<TState>)

Menjalankan operasi yang ditentukan.

Execute<TState>(IExecutionStrategy, Action<TState>, TState)

Menjalankan operasi yang ditentukan.

Execute<TResult>(IExecutionStrategy, Func<TResult>)

Menjalankan operasi yang ditentukan dan mengembalikan hasilnya.

Execute<TState,TResult>(IExecutionStrategy, TState, Func<TState,TResult>)

Menjalankan operasi yang ditentukan dan mengembalikan hasilnya.

Execute<TState,TResult>(IExecutionStrategy, TState, Func<TState,TResult>, Func<TState,ExecutionResult<TResult>>)

Menjalankan operasi yang ditentukan dan mengembalikan hasilnya.

Execute<TState,TResult>(IExecutionStrategy, Func<TState,TResult>, TState)

Menjalankan operasi yang ditentukan dan mengembalikan hasilnya.

Execute<TState,TResult>(IExecutionStrategy, Func<TState,TResult>, Func<TState,ExecutionResult<TResult>>, TState)
Kedaluwarsa.

Menjalankan operasi yang ditentukan dan mengembalikan hasilnya.

ExecuteAsync(IExecutionStrategy, Func<CancellationToken,Task>, CancellationToken)

Menjalankan operasi asinkron yang ditentukan.

ExecuteAsync(IExecutionStrategy, Func<Task>)

Menjalankan operasi asinkron yang ditentukan.

ExecuteAsync<TState>(IExecutionStrategy, TState, Func<TState,CancellationToken,Task>, CancellationToken)

Menjalankan operasi asinkron yang ditentukan.

ExecuteAsync<TState>(IExecutionStrategy, TState, Func<TState,Task>)

Menjalankan operasi asinkron yang ditentukan.

ExecuteAsync<TState>(IExecutionStrategy, Func<TState,CancellationToken,Task>, TState, CancellationToken)

Menjalankan operasi asinkron yang ditentukan.

ExecuteAsync<TState>(IExecutionStrategy, Func<TState,Task>, TState)

Menjalankan operasi asinkron yang ditentukan.

ExecuteAsync<TResult>(IExecutionStrategy, Func<CancellationToken,Task<TResult>>, CancellationToken)

Menjalankan operasi asinkron yang ditentukan dan mengembalikan hasilnya.

ExecuteAsync<TResult>(IExecutionStrategy, Func<Task<TResult>>)

Menjalankan operasi asinkron yang ditentukan dan mengembalikan hasilnya.

ExecuteAsync<TState,TResult>(IExecutionStrategy, TState, Func<TState, CancellationToken,Task<TResult>>, Func<TState,CancellationToken, Task<ExecutionResult<TResult>>>, CancellationToken)

Menjalankan operasi asinkron yang ditentukan dan mengembalikan hasilnya.

ExecuteAsync<TState,TResult>(IExecutionStrategy, TState, Func<TState,CancellationToken,Task<TResult>>, CancellationToken)

Menjalankan operasi asinkron yang ditentukan dan mengembalikan hasilnya.

ExecuteAsync<TState,TResult>(IExecutionStrategy, TState, Func<TState,Task<TResult>>)

Menjalankan operasi asinkron yang ditentukan dan mengembalikan hasilnya.

ExecuteAsync<TState,TResult>(IExecutionStrategy, Func<TState,CancellationToken,Task<TResult>>, TState, CancellationToken)

Menjalankan operasi asinkron yang ditentukan dan mengembalikan hasilnya.

ExecuteAsync<TState,TResult>(IExecutionStrategy, Func<TState,Task<TResult>>, TState)

Menjalankan operasi asinkron yang ditentukan dan mengembalikan hasilnya.

ExecuteInTransaction(IExecutionStrategy, Action, Func<Boolean>)

Menjalankan operasi yang ditentukan dalam transaksi. Memungkinkan untuk memeriksa apakah transaksi telah digulung balik jika terjadi kesalahan selama penerapan.

ExecuteInTransaction<TState>(IExecutionStrategy, TState, Action<TState>, Func<TState,Boolean>)

Menjalankan operasi yang ditentukan dalam transaksi. Memungkinkan untuk memeriksa apakah transaksi telah digulung balik jika terjadi kesalahan selama penerapan.

ExecuteInTransaction<TResult>(IExecutionStrategy, Func<TResult>, Func<Boolean>)

Menjalankan operasi yang ditentukan dalam transaksi dan mengembalikan hasilnya. Memungkinkan untuk memeriksa apakah transaksi telah digulung balik jika terjadi kesalahan selama penerapan.

ExecuteInTransaction<TState,TResult>(IExecutionStrategy, TState, Func<TState,TResult>, Func<TState,Boolean>)

Menjalankan operasi yang ditentukan dalam transaksi dan mengembalikan hasilnya. Memungkinkan untuk memeriksa apakah transaksi telah digulung balik jika terjadi kesalahan selama penerapan.

ExecuteInTransaction<TState,TResult>(IExecutionStrategy, Func<TState,TResult>, Func<TState,Boolean>, TState, DbContext)

Menjalankan operasi yang ditentukan dalam transaksi dan mengembalikan hasilnya setelah menerapkannya.

ExecuteInTransactionAsync(IExecutionStrategy, Func<CancellationToken,Task>, Func<CancellationToken,Task<Boolean>>, CancellationToken)

Menjalankan operasi asinkron yang ditentukan dalam transaksi. Memungkinkan untuk memeriksa apakah transaksi telah digulung balik jika terjadi kesalahan selama penerapan.

ExecuteInTransactionAsync(IExecutionStrategy, Func<Task>, Func<Task<Boolean>>)

Menjalankan operasi asinkron yang ditentukan dalam transaksi. Memungkinkan untuk memeriksa apakah transaksi telah digulung balik jika terjadi kesalahan selama penerapan.

ExecuteInTransactionAsync<TState>(IExecutionStrategy, TState, Func<TState,CancellationToken,Task>, Func<TState,CancellationToken, Task<Boolean>>, CancellationToken)

Menjalankan operasi asinkron yang ditentukan dalam transaksi. Memungkinkan untuk memeriksa apakah transaksi telah digulung balik jika terjadi kesalahan selama penerapan.

ExecuteInTransactionAsync<TResult>(IExecutionStrategy, Func<CancellationToken, Task<TResult>>, Func<CancellationToken,Task<Boolean>>, CancellationToken)

Menjalankan operasi asinkron yang ditentukan dalam transaksi dan mengembalikan hasilnya. Memungkinkan untuk memeriksa apakah transaksi telah digulung balik jika terjadi kesalahan selama penerapan.

ExecuteInTransactionAsync<TState,TResult>(IExecutionStrategy, TState, Func<TState,CancellationToken,Task<TResult>>, Func<TState, CancellationToken,Task<Boolean>>, CancellationToken)

Menjalankan operasi asinkron yang ditentukan dalam transaksi dan mengembalikan hasilnya. Memungkinkan untuk memeriksa apakah transaksi telah digulung balik jika terjadi kesalahan selama penerapan.

ExecuteInTransactionAsync<TState,TResult>(IExecutionStrategy, Func<TState,CancellationToken,Task<TResult>>, Func<TState,CancellationToken, Task<Boolean>>, TState, DbContext, CancellationToken)

Menjalankan operasi asinkron yang ditentukan dan mengembalikan hasilnya.

ExecuteInTransaction(IExecutionStrategy, Action, Func<Boolean>, IsolationLevel)

Menjalankan operasi yang ditentukan dalam transaksi. Memungkinkan untuk memeriksa apakah transaksi telah digulung balik jika terjadi kesalahan selama penerapan.

ExecuteInTransaction<TState>(IExecutionStrategy, TState, Action<TState>, Func<TState,Boolean>, IsolationLevel)

Menjalankan operasi yang ditentukan dalam transaksi. Memungkinkan untuk memeriksa apakah transaksi telah digulung balik jika terjadi kesalahan selama penerapan.

ExecuteInTransaction<TResult>(IExecutionStrategy, Func<TResult>, Func<Boolean>, IsolationLevel)

Menjalankan operasi yang ditentukan dalam transaksi dan mengembalikan hasilnya. Memungkinkan untuk memeriksa apakah transaksi telah digulung balik jika terjadi kesalahan selama penerapan.

ExecuteInTransaction<TState,TResult>(IExecutionStrategy, TState, Func<TState,TResult>, Func<TState,Boolean>, IsolationLevel)

Menjalankan operasi yang ditentukan dalam transaksi dan mengembalikan hasilnya. Memungkinkan untuk memeriksa apakah transaksi telah digulung balik jika terjadi kesalahan selama penerapan.

ExecuteInTransactionAsync(IExecutionStrategy, Func<CancellationToken,Task>, Func<CancellationToken,Task<Boolean>>, IsolationLevel, CancellationToken)

Menjalankan operasi asinkron yang ditentukan dalam transaksi. Memungkinkan untuk memeriksa apakah transaksi telah digulung balik jika terjadi kesalahan selama penerapan.

ExecuteInTransactionAsync(IExecutionStrategy, Func<Task>, Func<Task<Boolean>>, IsolationLevel)

Menjalankan operasi asinkron yang ditentukan dalam transaksi. Memungkinkan untuk memeriksa apakah transaksi telah digulung balik jika terjadi kesalahan selama penerapan.

ExecuteInTransactionAsync<TState>(IExecutionStrategy, TState, Func<TState,CancellationToken,Task>, Func<TState,CancellationToken, Task<Boolean>>, IsolationLevel, CancellationToken)

Menjalankan operasi asinkron yang ditentukan dalam transaksi. Memungkinkan untuk memeriksa apakah transaksi telah digulung balik jika terjadi kesalahan selama penerapan.

ExecuteInTransactionAsync<TResult>(IExecutionStrategy, Func<CancellationToken, Task<TResult>>, Func<CancellationToken,Task<Boolean>>, IsolationLevel, CancellationToken)

Menjalankan operasi asinkron yang ditentukan dalam transaksi dan mengembalikan hasilnya. Memungkinkan untuk memeriksa apakah transaksi telah digulung balik jika terjadi kesalahan selama penerapan.

ExecuteInTransactionAsync<TState,TResult>(IExecutionStrategy, TState, Func<TState,CancellationToken,Task<TResult>>, Func<TState, CancellationToken,Task<Boolean>>, IsolationLevel, CancellationToken)

Menjalankan operasi asinkron yang ditentukan dan mengembalikan hasilnya. Memungkinkan untuk memeriksa apakah transaksi telah digulung balik jika terjadi kesalahan selama penerapan.

Berlaku untuk