DbExecutionStrategy.ExecuteAsync 方法 (Func<Task>, CancellationToken)

[本页针对的是实体框架版本 6。最新版本以“实体框架”NuGet 包的形式提供。有关实体框架的更多信息,请参见 msdn.com/data/ef。]

在指定异步操作满足当前重试策略时重复执行此操作。

命名空间:  System.Data.Entity.Infrastructure
程序集:  EntityFramework(在 EntityFramework.dll 中)

语法

声明
Public Function ExecuteAsync ( _
    operation As Func(Of Task), _
    cancellationToken As CancellationToken _
) As Task
用法
Dim instance As DbExecutionStrategy 
Dim operation As Func(Of Task)
Dim cancellationToken As CancellationToken 
Dim returnValue As Task 

returnValue = instance.ExecuteAsync(operation, _
    cancellationToken)
public Task ExecuteAsync(
    Func<Task> operation,
    CancellationToken cancellationToken
)
public:
virtual Task^ ExecuteAsync(
    Func<Task^>^ operation, 
    CancellationToken cancellationToken
) sealed
abstract ExecuteAsync : 
        operation:Func<Task> * 
        cancellationToken:CancellationToken -> Task  
override ExecuteAsync : 
        operation:Func<Task> * 
        cancellationToken:CancellationToken -> Task
public final function ExecuteAsync(
    operation : Func<Task>, 
    cancellationToken : CancellationToken
) : Task

参数

  • operation
    类型:System.Func<Task>
    用于返回已启动任务的函数。

返回值

类型:System.Threading.Tasks.Task
如果原始任务成功完成(第一次执行或在瞬态失败后重试)将要运行以完成的任务。如果任务失败且发生非瞬态错误或达到重试限制值,则返回的任务将出错且必须显示异常。

Implements

IDbExecutionStrategy.ExecuteAsync(Func<Task>, CancellationToken)

异常

例外 条件
RetryLimitExceededException

如果重试延迟策略确定不应再重试操作。

InvalidOperationException

如果检测到现有事务且执行策略不支持它。

InvalidOperationException

如果此实例已用于执行某个操作。

请参阅

参考

DbExecutionStrategy 类

ExecuteAsync 重载

System.Data.Entity.Infrastructure 命名空间