Udostępnij za pośrednictwem


ExecutionStrategy Klasa

Definicja

Klasa podstawowa 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

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

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ć niezgodne.

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, że operacja została ponowiona do tej pory.

Logger

Rejestrator dla tego ExecutionStrategyelementu .

MaxRetryCount

Maksymalna liczba ponownych prób.

MaxRetryDelay

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

Random

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

RetriesOnFailure

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

Suspended
Przestarzałe.

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 element InnerException z exception tak długo, jak jest to wyjątek utworzony przez program Entity Framework i wywołuje exceptionHandler najwschodniej.

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 ponawianie 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>, Func<TState,ExecutionResult<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, 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