ExecutionStrategyExtensions.ExecuteAsync 方法

定义

重载

ExecuteAsync(IExecutionStrategy, Func<Task>)

执行指定的异步操作。

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

执行指定的异步操作。

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

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

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

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

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, Func<TState,CancellationToken,Task<TResult>>, TState, CancellationToken)

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

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

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

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

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

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

执行指定的异步操作。

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

执行指定的异步操作。

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

执行指定的异步操作。

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

执行指定的异步操作。

ExecuteAsync(IExecutionStrategy, Func<Task>)

执行指定的异步操作。

public static System.Threading.Tasks.Task ExecuteAsync (this Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy strategy, Func<System.Threading.Tasks.Task> operation);
static member ExecuteAsync : Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy * Func<System.Threading.Tasks.Task> -> System.Threading.Tasks.Task
<Extension()>
Public Function ExecuteAsync (strategy As IExecutionStrategy, operation As Func(Of Task)) As Task

参数

strategy
IExecutionStrategy

将用于执行的策略。

operation
Func<Task>

返回已启动任务的函数。

返回

如果原始任务成功完成, (第一次或重试暂时性故障) 后,将运行到完成的任务。 如果任务失败并出现非暂时性错误或达到重试限制,则返回的任务将出错,必须观察异常。

注解

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

适用于

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

执行指定的异步操作。

public static System.Threading.Tasks.Task ExecuteAsync (this Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy strategy, Func<System.Threading.CancellationToken,System.Threading.Tasks.Task> operation, System.Threading.CancellationToken cancellationToken);
static member ExecuteAsync : Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy * Func<System.Threading.CancellationToken, System.Threading.Tasks.Task> * System.Threading.CancellationToken -> System.Threading.Tasks.Task
<Extension()>
Public Function ExecuteAsync (strategy As IExecutionStrategy, operation As Func(Of CancellationToken, Task), cancellationToken As CancellationToken) As Task

参数

strategy
IExecutionStrategy

将用于执行的策略。

operation
Func<CancellationToken,Task>

返回已启动任务的函数。

cancellationToken
CancellationToken

用于取消重试操作的取消令牌,但不是已处于未执行状态或已成功完成的操作。

返回

如果原始任务成功完成, (第一次或重试暂时性故障) 后,将运行到完成的任务。 如果任务失败并出现非暂时性错误或达到重试限制,则返回的任务将出错,必须观察异常。

例外

注解

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

适用于

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

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

public static System.Threading.Tasks.Task<TResult> ExecuteAsync<TResult> (this Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy strategy, Func<System.Threading.Tasks.Task<TResult>> operation);
static member ExecuteAsync : Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy * Func<System.Threading.Tasks.Task<'Result>> -> System.Threading.Tasks.Task<'Result>
<Extension()>
Public Function ExecuteAsync(Of TResult) (strategy As IExecutionStrategy, operation As Func(Of Task(Of TResult))) As Task(Of TResult)

类型参数

TResult

返回operation的结果类型Task<TResult>

参数

strategy
IExecutionStrategy

将用于执行的策略。

operation
Func<Task<TResult>>

返回类型 TResult为 的已启动任务的函数。

返回

Task<TResult>

如果原始任务成功完成, (第一次或重试暂时性故障) 后,将运行到完成的任务。 如果任务失败并出现非暂时性错误或达到重试限制,则返回的任务将出错,必须观察异常。

注解

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

适用于

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

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

public static System.Threading.Tasks.Task<TResult> ExecuteAsync<TResult> (this Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy strategy, Func<System.Threading.CancellationToken,System.Threading.Tasks.Task<TResult>> operation, System.Threading.CancellationToken cancellationToken);
static member ExecuteAsync : Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy * Func<System.Threading.CancellationToken, System.Threading.Tasks.Task<'Result>> * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Result>
<Extension()>
Public Function ExecuteAsync(Of TResult) (strategy As IExecutionStrategy, operation As Func(Of CancellationToken, Task(Of TResult)), cancellationToken As CancellationToken) As Task(Of TResult)

类型参数

TResult

返回operation的结果类型Task<TResult>

参数

strategy
IExecutionStrategy

将用于执行的策略。

operation
Func<CancellationToken,Task<TResult>>

返回类型 TResult为 的已启动任务的函数。

cancellationToken
CancellationToken

用于取消重试操作的取消令牌,但不是已处于未执行状态或已成功完成的操作。

返回

Task<TResult>

如果原始任务成功完成, (第一次或重试暂时性故障) 后,将运行到完成的任务。 如果任务失败并出现非暂时性错误或达到重试限制,则返回的任务将出错,必须观察异常。

例外

注解

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

适用于

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

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

public static System.Threading.Tasks.Task<TResult> ExecuteAsync<TState,TResult> (this Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy strategy, TState state, Func<TState,System.Threading.CancellationToken,System.Threading.Tasks.Task<TResult>> operation, Func<TState,System.Threading.CancellationToken,System.Threading.Tasks.Task<Microsoft.EntityFrameworkCore.Storage.ExecutionResult<TResult>>> verifySucceeded, System.Threading.CancellationToken cancellationToken = default);
public static System.Threading.Tasks.Task<TResult> ExecuteAsync<TState,TResult> (this Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy strategy, TState state, Func<TState,System.Threading.CancellationToken,System.Threading.Tasks.Task<TResult>> operation, Func<TState,System.Threading.CancellationToken,System.Threading.Tasks.Task<Microsoft.EntityFrameworkCore.Storage.ExecutionResult<TResult>>>? verifySucceeded, System.Threading.CancellationToken cancellationToken = default);
static member ExecuteAsync : Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy * 'State * Func<'State, System.Threading.CancellationToken, System.Threading.Tasks.Task<'Result>> * Func<'State, System.Threading.CancellationToken, System.Threading.Tasks.Task<Microsoft.EntityFrameworkCore.Storage.ExecutionResult<'Result>>> * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Result>
<Extension()>
Public Function ExecuteAsync(Of TState, TResult) (strategy As IExecutionStrategy, state As TState, operation As Func(Of TState, CancellationToken, Task(Of TResult)), verifySucceeded As Func(Of TState, CancellationToken, Task(Of ExecutionResult(Of TResult))), Optional cancellationToken As CancellationToken = Nothing) As Task(Of TResult)

类型参数

TState

状态的类型。

TResult

返回operation的结果类型Task<TResult>

参数

strategy
IExecutionStrategy

将用于执行的策略。

state
TState

将传递给操作的状态。

operation
Func<TState,CancellationToken,Task<TResult>>

返回类型 TResult为 的已启动任务的函数。

verifySucceeded
Func<TState,CancellationToken,Task<ExecutionResult<TResult>>>

一个委托,它测试操作是否成功,即使引发异常也是如此。

cancellationToken
CancellationToken

用于取消重试操作的取消令牌,但不是已处于未执行状态或已成功完成的操作。

返回

Task<TResult>

如果原始任务成功完成, (第一次或重试暂时性故障) 后,将运行到完成的任务。 如果任务失败并出现非暂时性错误或达到重试限制,则返回的任务将出错,必须观察异常。

例外

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

注解

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

适用于

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

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

public static System.Threading.Tasks.Task<TResult> ExecuteAsync<TState,TResult> (this Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy strategy, TState state, Func<TState,System.Threading.CancellationToken,System.Threading.Tasks.Task<TResult>> operation, System.Threading.CancellationToken cancellationToken);
static member ExecuteAsync : Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy * 'State * Func<'State, System.Threading.CancellationToken, System.Threading.Tasks.Task<'Result>> * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Result>
<Extension()>
Public Function ExecuteAsync(Of TState, TResult) (strategy As IExecutionStrategy, state As TState, operation As Func(Of TState, CancellationToken, Task(Of TResult)), cancellationToken As CancellationToken) As Task(Of TResult)

类型参数

TState

状态的类型。

TResult

返回operation的结果类型Task<TResult>

参数

strategy
IExecutionStrategy

将用于执行的策略。

state
TState

将传递给操作的状态。

operation
Func<TState,CancellationToken,Task<TResult>>

返回类型 TResult为 的已启动任务的函数。

cancellationToken
CancellationToken

用于取消重试操作的取消令牌,但不是已处于未执行状态或已成功完成的操作。

返回

Task<TResult>

如果原始任务成功完成, (第一次或重试暂时性故障) 后,将运行到完成的任务。 如果任务失败并出现非暂时性错误或达到重试限制,则返回的任务将出错,必须观察异常。

例外

注解

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

适用于

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

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

public static System.Threading.Tasks.Task<TResult> ExecuteAsync<TState,TResult> (this Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy strategy, Func<TState,System.Threading.CancellationToken,System.Threading.Tasks.Task<TResult>> operation, TState state, System.Threading.CancellationToken cancellationToken);
static member ExecuteAsync : Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy * Func<'State, System.Threading.CancellationToken, System.Threading.Tasks.Task<'Result>> * 'State * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Result>
<Extension()>
Public Function ExecuteAsync(Of TState, TResult) (strategy As IExecutionStrategy, operation As Func(Of TState, CancellationToken, Task(Of TResult)), state As TState, cancellationToken As CancellationToken) As Task(Of TResult)

类型参数

TState

状态的类型。

TResult

返回operation的结果类型Task<TResult>

参数

strategy
IExecutionStrategy

将用于执行的策略。

operation
Func<TState,CancellationToken,Task<TResult>>

返回类型 TResult为 的已启动任务的函数。

state
TState

将传递给操作的状态。

cancellationToken
CancellationToken

用于取消重试操作的取消令牌,但不是已处于未执行状态或已成功完成的操作。

返回

Task<TResult>

如果原始任务成功完成, (第一次或重试暂时性故障) 后,将运行到完成的任务。 如果任务失败并出现非暂时性错误或达到重试限制,则返回的任务将出错,必须观察异常。

适用于

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

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

public static System.Threading.Tasks.Task<TResult> ExecuteAsync<TState,TResult> (this Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy strategy, TState state, Func<TState,System.Threading.Tasks.Task<TResult>> operation);
static member ExecuteAsync : Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy * 'State * Func<'State, System.Threading.Tasks.Task<'Result>> -> System.Threading.Tasks.Task<'Result>
<Extension()>
Public Function ExecuteAsync(Of TState, TResult) (strategy As IExecutionStrategy, state As TState, operation As Func(Of TState, Task(Of TResult))) As Task(Of TResult)

类型参数

TState

状态的类型。

TResult

返回operation的结果类型Task<TResult>

参数

strategy
IExecutionStrategy

将用于执行的策略。

state
TState

将传递给操作的状态。

operation
Func<TState,Task<TResult>>

返回类型 TResult为 的已启动任务的函数。

返回

Task<TResult>

如果原始任务成功完成, (第一次或重试暂时性故障) 后,将运行到完成的任务。 如果任务失败并出现非暂时性错误或达到重试限制,则返回的任务将出错,必须观察异常。

注解

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

适用于

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

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

public static System.Threading.Tasks.Task<TResult> ExecuteAsync<TState,TResult> (this Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy strategy, Func<TState,System.Threading.Tasks.Task<TResult>> operation, TState state);
static member ExecuteAsync : Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy * Func<'State, System.Threading.Tasks.Task<'Result>> * 'State -> System.Threading.Tasks.Task<'Result>
<Extension()>
Public Function ExecuteAsync(Of TState, TResult) (strategy As IExecutionStrategy, operation As Func(Of TState, Task(Of TResult)), state As TState) As Task(Of TResult)

类型参数

TState

状态的类型。

TResult

返回operation的结果类型Task<TResult>

参数

strategy
IExecutionStrategy

将用于执行的策略。

operation
Func<TState,Task<TResult>>

返回类型 TResult为 的已启动任务的函数。

state
TState

将传递给操作的状态。

返回

Task<TResult>

如果原始任务成功完成, (第一次或重试暂时性故障) 后,将运行到完成的任务。 如果任务失败并出现非暂时性错误或达到重试限制,则返回的任务将出错,必须观察异常。

适用于

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

执行指定的异步操作。

public static System.Threading.Tasks.Task ExecuteAsync<TState> (this Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy strategy, TState state, Func<TState,System.Threading.CancellationToken,System.Threading.Tasks.Task> operation, System.Threading.CancellationToken cancellationToken);
static member ExecuteAsync : Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy * 'State * Func<'State, System.Threading.CancellationToken, System.Threading.Tasks.Task> * System.Threading.CancellationToken -> System.Threading.Tasks.Task
<Extension()>
Public Function ExecuteAsync(Of TState) (strategy As IExecutionStrategy, state As TState, operation As Func(Of TState, CancellationToken, Task), cancellationToken As CancellationToken) As Task

类型参数

TState

状态的类型。

参数

strategy
IExecutionStrategy

将用于执行的策略。

state
TState

将传递给操作的状态。

operation
Func<TState,CancellationToken,Task>

返回已启动任务的函数。

cancellationToken
CancellationToken

用于取消重试操作的取消令牌,但不是已处于未执行状态或已成功完成的操作。

返回

如果原始任务成功完成, (第一次或重试暂时性故障) 后,将运行到完成的任务。 如果任务失败并出现非暂时性错误或达到重试限制,则返回的任务将出错,必须观察异常。

例外

注解

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

适用于

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

执行指定的异步操作。

public static System.Threading.Tasks.Task ExecuteAsync<TState> (this Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy strategy, Func<TState,System.Threading.CancellationToken,System.Threading.Tasks.Task> operation, TState state, System.Threading.CancellationToken cancellationToken);
static member ExecuteAsync : Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy * Func<'State, System.Threading.CancellationToken, System.Threading.Tasks.Task> * 'State * System.Threading.CancellationToken -> System.Threading.Tasks.Task
<Extension()>
Public Function ExecuteAsync(Of TState) (strategy As IExecutionStrategy, operation As Func(Of TState, CancellationToken, Task), state As TState, cancellationToken As CancellationToken) As Task

类型参数

TState

状态的类型。

参数

strategy
IExecutionStrategy

将用于执行的策略。

operation
Func<TState,CancellationToken,Task>

返回已启动任务的函数。

state
TState

将传递给操作的状态。

cancellationToken
CancellationToken

用于取消重试操作的取消令牌,但不是已处于未执行状态或已成功完成的操作。

返回

如果原始任务成功完成, (第一次或重试暂时性故障) 后,将运行到完成的任务。 如果任务失败并出现非暂时性错误或达到重试限制,则返回的任务将出错,必须观察异常。

适用于

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

执行指定的异步操作。

public static System.Threading.Tasks.Task ExecuteAsync<TState> (this Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy strategy, TState state, Func<TState,System.Threading.Tasks.Task> operation);
static member ExecuteAsync : Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy * 'State * Func<'State, System.Threading.Tasks.Task> -> System.Threading.Tasks.Task
<Extension()>
Public Function ExecuteAsync(Of TState) (strategy As IExecutionStrategy, state As TState, operation As Func(Of TState, Task)) As Task

类型参数

TState

状态的类型。

参数

strategy
IExecutionStrategy

将用于执行的策略。

state
TState

将传递给操作的状态。

operation
Func<TState,Task>

返回已启动任务的函数。

返回

如果原始任务成功完成, (第一次或重试暂时性故障) 后,将运行到完成的任务。 如果任务失败并出现非暂时性错误或达到重试限制,则返回的任务将出错,必须观察异常。

注解

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

适用于

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

执行指定的异步操作。

public static System.Threading.Tasks.Task ExecuteAsync<TState> (this Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy strategy, Func<TState,System.Threading.Tasks.Task> operation, TState state);
static member ExecuteAsync : Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy * Func<'State, System.Threading.Tasks.Task> * 'State -> System.Threading.Tasks.Task
<Extension()>
Public Function ExecuteAsync(Of TState) (strategy As IExecutionStrategy, operation As Func(Of TState, Task), state As TState) As Task

类型参数

TState

状态的类型。

参数

strategy
IExecutionStrategy

将用于执行的策略。

operation
Func<TState,Task>

返回已启动任务的函数。

state
TState

将传递给操作的状态。

返回

如果原始任务成功完成, (第一次或重试暂时性故障) 后,将运行到完成的任务。 如果任务失败并出现非暂时性错误或达到重试限制,则返回的任务将出错,必须观察异常。

适用于