Udostępnij za pośrednictwem


SqlServerRetryingExecutionStrategy Klasa

Definicja

Implementacja IExecutionStrategy ponawiania prób wykonania nie powiodła się w SQL Server.

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

Uwagi

Ta strategia jest specjalnie dostosowana do SQL Server (w tym Azure SQL). Jest on wstępnie skonfigurowany z numerami błędów przejściowych, które można ponowić. Można również podać dodatkowe numery błędów do ponawiania próby.

Okres istnienia usługi to Scoped. Oznacza to, że każde DbContext wystąpienie będzie używać własnego wystąpienia tej usługi. Implementacja może zależeć od innych usług zarejestrowanych w dowolnym okresie istnienia. Implementacja nie musi być bezpieczna wątkowo.

Aby uzyskać więcej informacji i przykładów, zobacz Odporność połączenia i ponawianie prób bazy danych .

Konstruktory

SqlServerRetryingExecutionStrategy(DbContext)

Tworzy nowe wystąpienie klasy SqlServerRetryingExecutionStrategy.

SqlServerRetryingExecutionStrategy(DbContext, Int32)

Tworzy nowe wystąpienie klasy SqlServerRetryingExecutionStrategy.

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

Tworzy nowe wystąpienie klasy SqlServerRetryingExecutionStrategy.

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

Tworzy nowe wystąpienie klasy SqlServerRetryingExecutionStrategy.

SqlServerRetryingExecutionStrategy(ExecutionStrategyContext)

Tworzy nowe wystąpienie klasy SqlServerRetryingExecutionStrategy.

SqlServerRetryingExecutionStrategy(ExecutionStrategyContext, Int32)

Tworzy nowe wystąpienie klasy SqlServerRetryingExecutionStrategy.

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

Tworzy nowe wystąpienie klasy SqlServerRetryingExecutionStrategy.

SqlServerRetryingExecutionStrategy(ExecutionStrategyDependencies)

Tworzy nowe wystąpienie klasy SqlServerRetryingExecutionStrategy.

SqlServerRetryingExecutionStrategy(ExecutionStrategyDependencies, IEnumerable<Int32>)

Tworzy nowe wystąpienie klasy SqlServerRetryingExecutionStrategy.

SqlServerRetryingExecutionStrategy(ExecutionStrategyDependencies, Int32)

Tworzy nowe wystąpienie klasy SqlServerRetryingExecutionStrategy.

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

Tworzy nowe wystąpienie klasy SqlServerRetryingExecutionStrategy.

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

Tworzy nowe wystąpienie klasy SqlServerRetryingExecutionStrategy.

Pola

DefaultMinDelayThrottling

Domyślne minimalne opóźnienie czasu między ponawianiami prób dla błędów ograniczania przepustowości.

Właściwości

AdditionalErrorNumbers

Dodatkowe numery błędów SQL, które powinny być traktowane jako przejściowe.

Context

Kontekst, w którym będą wywoływane operacje.

(Odziedziczone po ExecutionStrategy)
Dependencies

Zależności dla tej usługi.

(Odziedziczone po ExecutionStrategy)
ExceptionsEncountered

Lista wyjątków, które spowodowały, że operacja została ponowiona do tej pory.

(Odziedziczone po ExecutionStrategy)
Logger

Rejestrator dla tego ExecutionStrategyelementu .

(Odziedziczone po ExecutionStrategy)
MaxRetryCount

Maksymalna liczba ponownych prób.

(Odziedziczone po ExecutionStrategy)
MaxRetryDelay

Maksymalne opóźnienie między kolejnymi próbami.

(Odziedziczone po ExecutionStrategy)
Random

Pseudo-losowy generator liczb, który może służyć do różnic opóźnienia między ponownych prób.

(Odziedziczone po ExecutionStrategy)
RetriesOnFailure

Wskazuje, czy może to IExecutionStrategy ponowić próbę wykonania po awarii.

(Odziedziczone po ExecutionStrategy)

Metody

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

Wykonuje określoną operację i zwraca wynik.

(Odziedziczone po ExecutionStrategy)
Execute<TState,TResult>(TState, Func<DbContext,TState,TResult>, Func<DbContext,TState,ExecutionResult<TResult>>)

Wykonuje określoną operację i zwraca wynik.

(Odziedziczone po ExecutionStrategy)
ExecuteAsync<TState,TResult>(Func<TState,CancellationToken,Task<TResult>>, Func<TState,CancellationToken,Task<ExecutionResult<TResult>>>, TState, CancellationToken)

Wykonuje określoną operację asynchroniczną i zwraca wynik.

(Odziedziczone po ExecutionStrategy)
ExecuteAsync<TState,TResult>(TState, Func<DbContext,TState,CancellationToken, Task<TResult>>, Func<DbContext,TState,CancellationToken,Task<ExecutionResult<TResult>>>, CancellationToken)

Wykonuje określoną operację asynchroniczną i zwraca wynik.

(Odziedziczone po ExecutionStrategy)
ExecuteInTransaction<TState,TResult>(Func<TState,TResult>, Func<TState,Boolean>, TState)

Wykonuje określoną operację w transakcji i zwraca wynik po jego zatwierdzeniu.

(Odziedziczone po ExecutionStrategy)
ExecuteInTransactionAsync<TState,TResult>(Func<TState,CancellationToken, Task<TResult>>, Func<TState,CancellationToken,Task<Boolean>>, TState, CancellationToken)

Wykonuje określoną operację asynchroniczną i zwraca wynik.

(Odziedziczone po ExecutionStrategy)
GetNextDelay(Exception)

Określa, czy operacja powinna zostać ponowiona, a opóźnienie przed następną próbą.

OnFirstExecution()

Metoda wywoływana przed wykonaniem pierwszej operacji

(Odziedziczone po ExecutionStrategy)
OnRetry()

Metoda wywoływana przed ponowieniu próby wykonania operacji

(Odziedziczone po ExecutionStrategy)
ShouldRetryOn(Exception)

Określa, czy określony wyjątek reprezentuje błąd przejściowy, który może zostać zrekompensowany przez ponawianie próby. Dodatkowe wyjątki dotyczące ponawiania próby można przekazać do konstruktora.

ShouldVerifySuccessOn(Exception)

Określa, czy określony wyjątek może zostać zgłoszony po pomyślnym wykonaniu.

(Odziedziczone po ExecutionStrategy)

Metody rozszerzania

Execute(IExecutionStrategy, Action)

Wykonuje określoną operację.

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

Wykonuje określoną operację.

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

Wykonuje określoną operację.

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

Wykonuje określoną operację i zwraca wynik.

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

Wykonuje określoną operację i zwraca wynik.

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

Wykonuje określoną operację i zwraca wynik.

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

Wykonuje określoną operację i zwraca wynik.

Execute<TState,TResult>(IExecutionStrategy, Func<TState,TResult>, Func<TState,ExecutionResult<TResult>>, TState)
Przestarzałe.

Wykonuje określoną operację i zwraca wynik.

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

Wykonuje określoną operację asynchroniczną.

ExecuteAsync(IExecutionStrategy, Func<Task>)

Wykonuje określoną operację asynchroniczną.

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

Wykonuje określoną operację asynchroniczną.

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

Wykonuje określoną operację asynchroniczną.

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

Wykonuje określoną operację asynchroniczną.

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

Wykonuje określoną operację asynchroniczną.

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

Wykonuje określoną operację asynchroniczną i zwraca wynik.

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

Wykonuje określoną operację asynchroniczną i zwraca wynik.

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

Wykonuje określoną operację asynchroniczną i zwraca wynik.

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

Wykonuje określoną operację asynchroniczną i zwraca wynik.

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

Wykonuje określoną operację asynchroniczną i zwraca wynik.

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

Wykonuje określoną operację asynchroniczną i zwraca wynik.

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

Wykonuje określoną operację asynchroniczną i zwraca wynik.

ExecuteInTransaction(IExecutionStrategy, Action, Func<Boolean>)

Wykonuje określoną operację w transakcji. Umożliwia sprawdzenie, czy transakcja została wycofana, jeśli podczas zatwierdzania wystąpi błąd.

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

Wykonuje określoną operację w transakcji. Umożliwia sprawdzenie, czy transakcja została wycofana, jeśli podczas zatwierdzania wystąpi błąd.

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

Wykonuje określoną operację w transakcji i zwraca wynik. Umożliwia sprawdzenie, czy transakcja została wycofana, jeśli podczas zatwierdzania wystąpi błąd.

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

Wykonuje określoną operację w transakcji i zwraca wynik. Umożliwia sprawdzenie, czy transakcja została wycofana, jeśli podczas zatwierdzania wystąpi błąd.

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

Wykonuje określoną operację w transakcji i zwraca wynik po jego zatwierdzeniu.

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

Wykonuje określoną operację asynchroniczną w transakcji. Umożliwia sprawdzenie, czy transakcja została wycofana, jeśli podczas zatwierdzania wystąpi błąd.

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

Wykonuje określoną operację asynchroniczną w transakcji. Umożliwia sprawdzenie, czy transakcja została wycofana, jeśli podczas zatwierdzania wystąpi błąd.

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

Wykonuje określoną operację asynchroniczną w transakcji. Umożliwia sprawdzenie, czy transakcja została wycofana, jeśli podczas zatwierdzania wystąpi błąd.

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

Wykonuje określoną operację asynchroniczną w transakcji i zwraca wynik. Umożliwia sprawdzenie, czy transakcja została wycofana, jeśli podczas zatwierdzania wystąpi błąd.

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

Wykonuje określoną operację asynchroniczną w transakcji i zwraca wynik. Umożliwia sprawdzenie, czy transakcja została wycofana, jeśli podczas zatwierdzania wystąpi błąd.

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

Wykonuje określoną operację asynchroniczną i zwraca wynik.

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

Wykonuje określoną operację w transakcji. Umożliwia sprawdzenie, czy transakcja została wycofana, jeśli podczas zatwierdzania wystąpi błąd.

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

Wykonuje określoną operację w transakcji. Umożliwia sprawdzenie, czy transakcja została wycofana, jeśli podczas zatwierdzania wystąpi błąd.

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

Wykonuje określoną operację w transakcji i zwraca wynik. Umożliwia sprawdzenie, czy transakcja została wycofana, jeśli podczas zatwierdzania wystąpi błąd.

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

Wykonuje określoną operację w transakcji i zwraca wynik. Umożliwia sprawdzenie, czy transakcja została wycofana, jeśli podczas zatwierdzania wystąpi błąd.

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

Wykonuje określoną operację asynchroniczną w transakcji. Umożliwia sprawdzenie, czy transakcja została wycofana, jeśli podczas zatwierdzania wystąpi błąd.

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

Wykonuje określoną operację asynchroniczną w transakcji. Umożliwia sprawdzenie, czy transakcja została wycofana, jeśli podczas zatwierdzania wystąpi błąd.

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

Wykonuje określoną operację asynchroniczną w transakcji. Umożliwia sprawdzenie, czy transakcja została wycofana, jeśli podczas zatwierdzania wystąpi błąd.

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

Wykonuje określoną operację asynchroniczną w transakcji i zwraca wynik. Umożliwia sprawdzenie, czy transakcja została wycofana, jeśli podczas zatwierdzania wystąpi błąd.

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

Wykonuje określoną operację asynchroniczną i zwraca wynik. Umożliwia sprawdzenie, czy transakcja została wycofana, jeśli podczas zatwierdzania wystąpi błąd.

Dotyczy