ExecutionStrategy Klasa

Definicja

Klasa bazowa dla IExecutionStrategy implementacji.

public abstract class ExecutionStrategy : Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy
type ExecutionStrategy = class
    interface IExecutionStrategy
Public MustInherit Class ExecutionStrategy
Implements IExecutionStrategy
Dziedziczenie
ExecutionStrategy
Pochodne
Implementuje

Uwagi

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

Konstruktory

ExecutionStrategy(DbContext, Int32, TimeSpan)

Tworzy nowe wystąpienie klasy ExecutionStrategy.

ExecutionStrategy(ExecutionStrategyContext, Int32, TimeSpan)

Tworzy nowe wystąpienie klasy ExecutionStrategy.

ExecutionStrategy(ExecutionStrategyDependencies, Int32, TimeSpan)

Tworzy nowe wystąpienie klasy ExecutionStrategy.

Pola

DefaultMaxDelay

Domyślne maksymalne opóźnienie czasu między ponawianiami musi być niezwiązane.

DefaultMaxRetryCount

Domyślna liczba ponownych prób.

Właściwości

Context

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

Current

Pobiera lub ustawia aktualnie wykonaną strategię. Wszystkie zagnieżdżone wywołania będą obsługiwane przez najbardziej zewnętrzną strategię.

Dependencies

Zależności dla tej usługi.

ExceptionsEncountered

Lista wyjątków, które spowodowały ponowną próbę operacji do tej pory.

Logger

Rejestrator dla tego ExecutionStrategyelementu .

MaxRetryCount

Maksymalna liczba ponownych prób.

MaxRetryDelay

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

Random

Pseudolosowy generator liczb, który może służyć do różnicy opóźnienia między ponawiania prób.

RetriesOnFailure

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

Suspended
Nieaktualne.

Wskazuje, czy strategia jest zawieszona. Strategia jest zwykle zawieszana podczas wykonywania, aby uniknąć cyklicznego wykonywania z zagnieżdżonych operacji.

Metody

CallOnWrappedException<TResult>(Exception, Func<Exception,TResult>)

Rekursywnie pobiera wyjątek InnerException z exception tak długo, jak jest to wyjątek utworzony przez program Entity Framework i wywołuje exceptionHandler metodę najdalej wewnętrznych.

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

Wykonuje określoną operację i zwraca wynik.

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

Wykonuje określoną operację i zwraca wynik.

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

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

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.

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

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

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

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

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

OnRetry()

Metoda wywoływana przed ponowieniu próby wykonania operacji

ShouldRetryOn(Exception)

Określa, czy określony wyjątek reprezentuje błąd przejściowy, który może zostać zrekompensowany przez ponowienie próby.

ShouldVerifySuccessOn(Exception)

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

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)
Nieaktualne.

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