语言

ExecutionStrategy.Execute 方法

定义

重载

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

Source:
ExecutionStrategy.cs
Source:
ExecutionStrategy.cs
Source:
ExecutionStrategy.cs
Source:
ExecutionStrategy.cs
Source:
ExecutionStrategy.cs
Source:
ExecutionStrategy.cs
Source:
ExecutionStrategy.cs
Source:
ExecutionStrategy.cs
Source:
ExecutionStrategy.cs
Source:
ExecutionStrategy.cs
Source:
ExecutionStrategy.cs

执行指定的操作并返回结果。

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

操作的结果。

实现

例外

在配置的重试次数之后,该操作未成功。

注解

有关详细信息和示例,请参阅 连接复原能力和数据库重试 。

适用于