2009-09-29 34 views
0

我正在開發一個實用程序以便在WF數據庫中使用持久WF實例。阻止WF運行時或持久性服務加載WF實例

我正在使用標準的SqlWorkflowPersistenceService來訪問WF數據庫。 我想使用持久性服務功能,如GetAllWorkflows()和通過GetWorkflow()加載單個實例。

雖然我正在處理這些實例,但我想阻止運行時處理其他實例。持久性輪詢間隔設置爲較高值,以防止服務在工具運行時輪詢,但服務在啓動時加載具有到期定時器的實例。

有沒有辦法阻止運行時加載和處理實例呢?

回答

1

據我所知,沒有真正的開箱即用設置,可以讓您加載工作流程而無需啓動它們。最簡單的方法/解決方法是使用ManualWorkflowScheduler並將activeTimer設置爲false。這樣你就可以加載工作流程,但是直到你明確這樣做,它們纔會被執行。請記住,您必須卸載您自己加載的任何工作流程實例,因爲沒有執行意味着工作流程不會變爲空閒狀態,並且unloadOnIdle設置不會啓動。

+0

感謝您的超級解答。我真的沒有想到ManualWorkflowScheduler,這似乎是合乎邏輯的。 – 2009-10-05 10:34:27