2013-02-05 161 views
1

每隔2分鐘重複一次代碼活動,直至滿足特定條件爲止的最佳方式是什麼?Windows Workflow Foundation每隔X分鐘重複一次活動

說我有以下代碼活動,檢查數據庫,看到一批報告已完成。

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還是那種不好的做法?

我會假設我需要一段時間的組合,而有延遲和條件嗎?

回答

3

繼承人的解決方案,我想出了:

enter image description here