在满足特定条件之前,每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还是那种不好的做法?
我认为我需要在延迟和条件的同时进行一段时间/做的组合吗?
答案 0 :(得分:3)
这是我提出的解决方案: