我新的工作流基础和想了解的ActivityAction
和ActivityFunc
的目的和之间的区别是从有孩子的活动,而不是有什么不同。WF 4:ActivityAction或ActivityFunc和儿童活动
至于我能理解孩子的活动可能在某些复合NativeActivity
存在,必须由它来调度。所以儿童活动可能在执行期间被NativeActivity
用作事件处理程序。因此,例如,此NativeActivity可能会运行一些长时间运行的计算,并在其完成时安排它的子进程。
ActivityAction
和ActivityFunc
(FUNC返回一个结果和行动没有)存在用于相同的目的 - 使在执行在NativeActivity
中定义的过程堵塞自定义处理程序。不同之处在于那些是强类型的,看起来更像是父级声明的合同。
所以我来到了结论,主要区别是强类型和ActivityFunc /动作可能与孩子的活动交换。我的理解错了还是错过了一些东西?
我发现,我需要这一切的时候,作为传递值和从子活动获得返回结果在我的工作流程很常见的模式。它也非常强大,而将值暴露给子活动的“变量集合”方法是* not *。我总是发现WF4扼流圈带有变量的“可变范围”误差。 – Will
我通常只是在子活动中使用In/OutArguments,并提供一个活动设计器,因此您可以像设计时间一样将其与任何其他活动挂钩。这两种方法都有效,所以我猜这是个人偏好。 – Maurice