我新的工作流基礎和想了解的ActivityAction
和ActivityFunc
的目的和之間的區別是從有孩子的活動,而不是有什麼不同。WF 4:ActivityAction或ActivityFunc和兒童活動
至於我能理解孩子的活動可能在某些複合NativeActivity
存在,必須由它來調度。所以兒童活動可能在執行期間被NativeActivity
用作事件處理程序。因此,例如,此NativeActivity可能會運行一些長時間運行的計算,並在其完成時安排它的子進程。
ActivityAction
和ActivityFunc
(FUNC返回一個結果和行動沒有)存在用於相同的目的 - 使在執行在NativeActivity
中定義的過程堵塞自定義處理程序。不同之處在於那些是強類型的,看起來更像是父級聲明的合同。
所以我來到了結論,主要區別是強類型和ActivityFunc /動作可能與孩子的活動交換。我的理解錯了還是錯過了一些東西?
我發現,我需要這一切的時候,作爲傳遞值和從子活動獲得返回結果在我的工作流程很常見的模式。它也非常強大,而將值暴露給子活動的「變量集合」方法是* not *。我總是發現WF4扼流圈帶有變量的「可變範圍」誤差。 – Will
我通常只是在子活動中使用In/OutArguments,並提供一個活動設計器,因此您可以像設計時間一樣將其與任何其他活動掛鉤。這兩種方法都有效,所以我猜這是個人偏好。 – Maurice