1

在满足特定条件之前,每 2 分钟重复一次代码活动的最佳方法是什么?

假设我有以下代码活动来检查数据库以查看一批报告是否已完成。

public sealed class CheckReportsAreComplete : CodeActivity
{        
    public InArgument<int> ReportBatchId{ get; set; }       
    public OutArgument<bool> HaveReportsCompleted{ get; set; }

    protected override void Execute(CodeActivityContext context)
    {             
        bool haveCompleted = ReportService.HaveReportsCompleted((context.GetValue(this.ReportBatchId));

        HaveReportsCompleted.Set(context, haveCompleted);                       
    }
}

我需要此代码活动每 2 分钟运行一次,并在 OutArgument HaveReportsCompleted 设置为 true 时继续处理。我应该只在代码中使用 Timer.Sleep 还是这是不好的做法?

我假设我需要一段时间/一段时间与延迟和条件的组合?

4

1 回答 1

3

这是我想出的解决方案:

在此处输入图像描述

于 2013-02-05T09:37:18.580 回答