IExecutionStrategy 介面

定義

用來對資料庫執行命令或查詢的策略,可能是發生失敗時要重試的邏輯。

public interface IExecutionStrategy
type IExecutionStrategy = interface
Public Interface IExecutionStrategy
衍生

備註

服務存留期為 Scoped 。 這表示每個 DbContext 實例都會使用此服務自己的實例。 實作可能相依于任何存留期註冊的其他服務。 實作不需要安全線程。

如需詳細資訊 和範例,請參閱連線復原和資料庫重試

屬性

RetriesOnFailure

指出這 IExecutionStrategy 是否可能會在失敗之後重試執行。

方法

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

執行指定的作業並傳回結果。

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

執行指定的作業並傳回結果。

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

執行指定的非同步作業,並傳回結果。

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

執行指定的非同步作業,並傳回結果。

擴充方法

Execute(IExecutionStrategy, Action)

執行指定的作業。

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

執行指定的作業。

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

執行指定的作業。

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

執行指定的作業並傳回結果。

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

執行指定的作業並傳回結果。

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

執行指定的作業並傳回結果。

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

執行指定的作業並傳回結果。

Execute<TState,TResult>(IExecutionStrategy, Func<TState,TResult>, Func<TState,ExecutionResult<TResult>>, TState)
已淘汰.

執行指定的作業並傳回結果。

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

執行指定的非同步作業。

ExecuteAsync(IExecutionStrategy, Func<Task>)

執行指定的非同步作業。

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

執行指定的非同步作業。

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

執行指定的非同步作業。

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

執行指定的非同步作業。

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

執行指定的非同步作業。

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

執行指定的非同步作業,並傳回結果。

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

執行指定的非同步作業,並傳回結果。

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

執行指定的非同步作業,並傳回結果。

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

執行指定的非同步作業,並傳回結果。

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

執行指定的非同步作業,並傳回結果。

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

執行指定的非同步作業,並傳回結果。

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

執行指定的非同步作業,並傳回結果。

ExecuteInTransaction(IExecutionStrategy, Action, Func<Boolean>)

在交易中執行指定的作業。 允許檢查交易是否已在認可期間發生錯誤時回復。

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

在交易中執行指定的作業。 允許檢查交易是否已在認可期間發生錯誤時回復。

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

在交易中執行指定的作業,並傳回結果。 允許檢查交易是否已在認可期間發生錯誤時回復。

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

在交易中執行指定的作業,並傳回結果。 允許檢查交易是否已在認可期間發生錯誤時回復。

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

在交易中執行指定的作業,並在認可之後傳回結果。

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

在交易中執行指定的非同步作業。 允許檢查交易是否已在認可期間發生錯誤時回復。

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

在交易中執行指定的非同步作業。 允許檢查交易是否已在認可期間發生錯誤時回復。

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

在交易中執行指定的非同步作業。 允許檢查交易是否已在認可期間發生錯誤時回復。

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

在交易中執行指定的非同步作業,並傳回結果。 允許檢查交易是否已在認可期間發生錯誤時回復。

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

在交易中執行指定的非同步作業,並傳回結果。 允許檢查交易是否已在認可期間發生錯誤時回復。

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

執行指定的非同步作業,並傳回結果。

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

在交易中執行指定的作業。 允許檢查交易是否已在認可期間發生錯誤時回復。

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

在交易中執行指定的作業。 允許檢查交易是否已在認可期間發生錯誤時回復。

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

在交易中執行指定的作業,並傳回結果。 允許檢查交易是否已在認可期間發生錯誤時回復。

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

在交易中執行指定的作業,並傳回結果。 允許檢查交易是否已在認可期間發生錯誤時回復。

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

在交易中執行指定的非同步作業。 允許檢查交易是否已在認可期間發生錯誤時回復。

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

在交易中執行指定的非同步作業。 允許檢查交易是否已在認可期間發生錯誤時回復。

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

在交易中執行指定的非同步作業。 允許檢查交易是否已在認可期間發生錯誤時回復。

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

在交易中執行指定的非同步作業,並傳回結果。 允許檢查交易是否已在認可期間發生錯誤時回復。

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

執行指定的非同步作業,並傳回結果。 允許檢查交易是否已在認可期間發生錯誤時回復。

適用於