我正在使用WorkFlowServiceHost(在.net 3.5中)託管狀態機工作流。我使用WCF接收活動處理對工作流程的調用。我正在使用WCF授權策略根據消息標題中的信息將傳入請求附加到請求。因此,我可以使用ServiceSecurityContext或Thread.CurrentPrincipal獲得有關請求(角色,用戶等)的授權信息。Workflow Foundation線程和WCF OperationContext
我知道這對我們不起作用,因爲工作流調度不同的線程來處理運行時引擎在有工作要做時(即接收活動)引發的事件。有關請求的上下文信息(OperationContext)在工作流程中不再可用(除非在運行時線程上執行工作時隨機)。
我想要做的是在創建工作線程之前獲取有關請求的信息(OperationContext),獲取工作線程並將上下文信息附加到工作線程,以便在工作流實例中可用。
我想在運行時必須有一些事件可以處理,但我沒有提出任何事情。我真的不想使用手動工作流調度程序。任何幫助表示讚賞。
謝謝!
哇,有人回覆! ;-)。感謝您的鏈接,我們最終將工作流程移植到了我們自己的解決方案中,這很煩人,但它最終成爲正確的選擇(更好的性能,更多的控制,更少的開銷)。但從外觀上看,他們在WF4.0中提供了更好的鉤子 – Dan 2011-03-30 11:18:13