次の方法で共有


ExecutionStrategy.Execute メソッド

定義

オーバーロード

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

指定した操作を実行し、結果を返します。

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

指定した操作を実行し、結果を返します。

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

指定した操作を実行し、結果を返します。

public virtual TResult Execute<TState,TResult> (Func<TState,TResult> operation, Func<TState,Microsoft.EntityFrameworkCore.Storage.ExecutionResult<TResult>> verifySucceeded, TState state);
abstract member Execute : Func<'State, 'Result> * Func<'State, Microsoft.EntityFrameworkCore.Storage.ExecutionResult<'Result>> * 'State -> 'Result
override this.Execute : Func<'State, 'Result> * Func<'State, Microsoft.EntityFrameworkCore.Storage.ExecutionResult<'Result>> * 'State -> 'Result
Public Overridable Function Execute(Of TState, TResult) (operation As Func(Of TState, TResult), verifySucceeded As Func(Of TState, ExecutionResult(Of TResult)), state As TState) As TResult

型パラメーター

TState

状態の型。

TResult

の戻り値の operation型。

パラメーター

operation
Func<TState,TResult>

TResultの結果を返す実行可能操作を表すデリゲート。

verifySucceeded
Func<TState,ExecutionResult<TResult>>

例外がスローされた場合でも、操作が成功したかどうかをテストするデリゲート。

state
TState

操作に渡される状態。

戻り値

TResult

操作の結果。

実装

例外

構成された再試行回数の後に操作が成功しなかった場合にスローされます。

適用対象

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

指定した操作を実行し、結果を返します。

public virtual TResult Execute<TState,TResult> (TState state, Func<Microsoft.EntityFrameworkCore.DbContext,TState,TResult> operation, Func<Microsoft.EntityFrameworkCore.DbContext,TState,Microsoft.EntityFrameworkCore.Storage.ExecutionResult<TResult>> verifySucceeded);
public virtual TResult Execute<TState,TResult> (TState state, Func<Microsoft.EntityFrameworkCore.DbContext,TState,TResult> operation, Func<Microsoft.EntityFrameworkCore.DbContext,TState,Microsoft.EntityFrameworkCore.Storage.ExecutionResult<TResult>>? verifySucceeded);
abstract member Execute : 'State * Func<Microsoft.EntityFrameworkCore.DbContext, 'State, 'Result> * Func<Microsoft.EntityFrameworkCore.DbContext, 'State, Microsoft.EntityFrameworkCore.Storage.ExecutionResult<'Result>> -> 'Result
override this.Execute : 'State * Func<Microsoft.EntityFrameworkCore.DbContext, 'State, 'Result> * Func<Microsoft.EntityFrameworkCore.DbContext, 'State, Microsoft.EntityFrameworkCore.Storage.ExecutionResult<'Result>> -> 'Result
Public Overridable Function Execute(Of TState, TResult) (state As TState, operation As Func(Of DbContext, TState, TResult), verifySucceeded As Func(Of DbContext, TState, ExecutionResult(Of TResult))) As TResult

型パラメーター

TState

状態の型。

TResult

の戻り値の operation型。

パラメーター

state
TState

操作に渡される状態。

operation
Func<DbContext,TState,TResult>

TResultの結果を返す実行可能操作を表すデリゲート。

verifySucceeded
Func<DbContext,TState,ExecutionResult<TResult>>

例外がスローされた場合でも、操作が成功したかどうかをテストするデリゲート。

戻り値

TResult

操作の結果。

実装

例外

構成された再試行回数が経過しても、操作は成功していません。

注釈

詳細と例については、「 接続の回復性とデータベースの再試行 」を参照してください。

適用対象