Aracılığıyla paylaş


ExecutionStrategy Sınıf

Tanım

Uygulamalar için IExecutionStrategy temel sınıf.

public abstract class ExecutionStrategy : Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy
type ExecutionStrategy = class
    interface IExecutionStrategy
Public MustInherit Class ExecutionStrategy
Implements IExecutionStrategy
Devralma
ExecutionStrategy
Türetilmiş
Uygulamalar

Açıklamalar

Hizmet ömrü şeklindedir Scoped. Bu, her DbContext örneğin bu hizmetin kendi örneğini kullanacağı anlamına gelir. Uygulama, herhangi bir yaşam süresiyle kaydedilen diğer hizmetlere bağlı olabilir. Uygulamanın iş parçacığı güvenli olması gerekmez.

Daha fazla bilgi ve örnek için bkz. Bağlantı dayanıklılığı ve veritabanı yeniden denemeleri .

Oluşturucular

ExecutionStrategy(DbContext, Int32, TimeSpan)

ExecutionStrategy öğesinin yeni bir örneğini oluşturur.

ExecutionStrategy(ExecutionStrategyContext, Int32, TimeSpan)

ExecutionStrategy öğesinin yeni bir örneğini oluşturur.

ExecutionStrategy(ExecutionStrategyDependencies, Int32, TimeSpan)

ExecutionStrategy öğesinin yeni bir örneğini oluşturur.

Alanlar

DefaultMaxDelay

Yeniden denemeler arasındaki varsayılan en uzun gecikme süresi, olumsuz olmalıdır.

DefaultMaxRetryCount

Varsayılan yeniden deneme denemesi sayısı.

Özellikler

Context

İşlemlerin çağrılacağı bağlam.

Current

Şu anda yürütülmekte olan stratejiyi alır veya ayarlar. Tüm iç içe çağrılar en dıştaki strateji tarafından işlenir.

Dependencies

Bu hizmet için bağımlılıklar.

ExceptionsEncountered

İşlemin şu ana kadar yeniden denenmesiyle ilgili özel durumların listesi.

Logger

Bunun ExecutionStrategygünlükçüsüsü.

MaxRetryCount

Yeniden deneme denemesi sayısı üst sınırı.

MaxRetryDelay

Yeniden denemeler arasındaki en büyük gecikme.

Random

Yeniden denemeler arasındaki gecikmeyi değiştirmek için kullanılabilecek sahte rastgele sayı oluşturucu.

RetriesOnFailure

Bunun IExecutionStrategy bir hatadan sonra yürütmeyi yeniden deneyip deneyemeyeceğini gösterir.

Suspended
Geçersiz.

Stratejinin askıya alınıp alınmadığını gösterir. strateji genellikle iç içe işlemlerden özyinelemeli yürütmeyi önlemek için yürütülürken askıya alınıyor.

Yöntemler

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

Entity Framework tarafından oluşturulan bir özel durum olduğu ve en içtekini çağırdığı exceptionHandler sürece InnerException'dan exception yinelemeli olarak alır.

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

Belirtilen işlemi yürütür ve sonucu döndürür.

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

Belirtilen işlemi yürütür ve sonucu döndürür.

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

Belirtilen zaman uyumsuz işlemi yürütür ve sonucu döndürür.

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

Belirtilen zaman uyumsuz işlemi yürütür ve sonucu döndürür.

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

Belirtilen işlemi bir işlemde yürütür ve işledikten sonra sonucu döndürür.

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

Belirtilen zaman uyumsuz işlemi yürütür ve sonucu döndürür.

GetNextDelay(Exception)

İşlemin yeniden denenip denenmeyeceğini ve bir sonraki denemeden önceki gecikmeyi belirler.

OnFirstExecution()

İlk işlem yürütülmeden önce çağrılan yöntem

OnRetry()

İşlem yürütmeyi yeniden denemeden önce çağrılan yöntem

ShouldRetryOn(Exception)

Belirtilen özel durumun yeniden deneme ile telafi edilebilecek geçici bir hatayı temsil edip etmediğini belirler.

ShouldVerifySuccessOn(Exception)

Belirtilen özel durumun başarılı bir yürütmeden sonra oluşturulup oluşturulamayacağını belirler.

Uzantı Metotları

Execute(IExecutionStrategy, Action)

Belirtilen işlemi yürütür.

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

Belirtilen işlemi yürütür.

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

Belirtilen işlemi yürütür.

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

Belirtilen işlemi yürütür ve sonucu döndürür.

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

Belirtilen işlemi yürütür ve sonucu döndürür.

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

Belirtilen işlemi yürütür ve sonucu döndürür.

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

Belirtilen işlemi yürütür ve sonucu döndürür.

Execute<TState,TResult>(IExecutionStrategy, Func<TState,TResult>, Func<TState,ExecutionResult<TResult>>, TState)
Geçersiz.

Belirtilen işlemi yürütür ve sonucu döndürür.

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

Belirtilen zaman uyumsuz işlemi yürütür.

ExecuteAsync(IExecutionStrategy, Func<Task>)

Belirtilen zaman uyumsuz işlemi yürütür.

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

Belirtilen zaman uyumsuz işlemi yürütür.

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

Belirtilen zaman uyumsuz işlemi yürütür.

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

Belirtilen zaman uyumsuz işlemi yürütür.

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

Belirtilen zaman uyumsuz işlemi yürütür.

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

Belirtilen zaman uyumsuz işlemi yürütür ve sonucu döndürür.

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

Belirtilen zaman uyumsuz işlemi yürütür ve sonucu döndürür.

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

Belirtilen zaman uyumsuz işlemi yürütür ve sonucu döndürür.

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

Belirtilen zaman uyumsuz işlemi yürütür ve sonucu döndürür.

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

Belirtilen zaman uyumsuz işlemi yürütür ve sonucu döndürür.

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

Belirtilen zaman uyumsuz işlemi yürütür ve sonucu döndürür.

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

Belirtilen zaman uyumsuz işlemi yürütür ve sonucu döndürür.

ExecuteInTransaction(IExecutionStrategy, Action, Func<Boolean>)

Belirtilen işlemi bir işlemde yürütür. İşleme sırasında bir hata oluşursa işlemin geri alıp almadığını denetlemeye olanak tanır.

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

Belirtilen işlemi bir işlemde yürütür. İşleme sırasında bir hata oluşursa işlemin geri alıp almadığını denetlemeye olanak tanır.

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

Belirtilen işlemi bir işlemde yürütür ve sonucu döndürür. İşleme sırasında bir hata oluşursa işlemin geri alıp almadığını denetlemeye olanak tanır.

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

Belirtilen işlemi bir işlemde yürütür ve sonucu döndürür. İşleme sırasında bir hata oluşursa işlemin geri alıp almadığını denetlemeye olanak tanır.

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

Belirtilen işlemi bir işlemde yürütür ve işledikten sonra sonucu döndürür.

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

Belirtilen zaman uyumsuz işlemi bir işlemde yürütür. İşleme sırasında bir hata oluşursa işlemin geri alıp almadığını denetlemeye olanak tanır.

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

Belirtilen zaman uyumsuz işlemi bir işlemde yürütür. İşleme sırasında bir hata oluşursa işlemin geri alıp almadığını denetlemeye olanak tanır.

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

Belirtilen zaman uyumsuz işlemi bir işlemde yürütür. İşleme sırasında bir hata oluşursa işlemin geri alıp almadığını denetlemeye olanak tanır.

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

Belirtilen zaman uyumsuz işlemi bir işlemde yürütür ve sonucu döndürür. İşleme sırasında bir hata oluşursa işlemin geri alıp almadığını denetlemeye olanak tanır.

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

Belirtilen zaman uyumsuz işlemi bir işlemde yürütür ve sonucu döndürür. İşleme sırasında bir hata oluşursa işlemin geri alıp almadığını denetlemeye olanak tanır.

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

Belirtilen zaman uyumsuz işlemi yürütür ve sonucu döndürür.

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

Belirtilen işlemi bir işlemde yürütür. İşleme sırasında bir hata oluşursa işlemin geri alıp almadığını denetlemeye olanak tanır.

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

Belirtilen işlemi bir işlemde yürütür. İşleme sırasında bir hata oluşursa işlemin geri alıp almadığını denetlemeye olanak tanır.

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

Belirtilen işlemi bir işlemde yürütür ve sonucu döndürür. İşleme sırasında bir hata oluşursa işlemin geri alıp almadığını denetlemeye olanak tanır.

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

Belirtilen işlemi bir işlemde yürütür ve sonucu döndürür. İşleme sırasında bir hata oluşursa işlemin geri alıp almadığını denetlemeye olanak tanır.

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

Belirtilen zaman uyumsuz işlemi bir işlemde yürütür. İşleme sırasında bir hata oluşursa işlemin geri alıp almadığını denetlemeye olanak tanır.

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

Belirtilen zaman uyumsuz işlemi bir işlemde yürütür. İşleme sırasında bir hata oluşursa işlemin geri alıp almadığını denetlemeye olanak tanır.

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

Belirtilen zaman uyumsuz işlemi bir işlemde yürütür. İşleme sırasında bir hata oluşursa işlemin geri alıp almadığını denetlemeye olanak tanır.

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

Belirtilen zaman uyumsuz işlemi bir işlemde yürütür ve sonucu döndürür. İşleme sırasında bir hata oluşursa işlemin geri alıp almadığını denetlemeye olanak tanır.

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

Belirtilen zaman uyumsuz işlemi yürütür ve sonucu döndürür. İşleme sırasında bir hata oluşursa işlemin geri alıp almadığını denetlemeye olanak tanır.

Şunlara uygulanır