Windows Workflow Foundation 中变量和参数的区别

Difference between Variables and Arguments in Windows Workflow Foundation

我是 Windows Workflow Foundation 的新手,所以这个问题看起来有点简单。

工作流中的参数和变量之间的主要区别是什么?以及在什么情况下应该使用哪一个。

例如如果我需要存储一些可以被工作流中的所有活动使用的对象,并且活动应该能够修改该对象。我应该使用哪一个 - 变量还是参数?

参数是活动的输入和输出(整个工作流程在 WWF 中也算作一个 Activity)

因此,任何放入工作流的数据都是通过在工作流中命名为 InArgument 的参数传入的。 (每次我写 InArgumentt 我也可以使用 InOutArgument)

任何放入 Activity 的数据都通过在 activity 中命名为 InAargument 的参数传入。

除了参数必须标记为 Out(或 In/Out)外,输出相同

Arguments 中的值在工作流中可用或 activity 将参数设置为 InArgument

变量只存在于它们被命名的容器内。 所以工作流中的变量是在工作流中创建的,而不是传入的。

您可以将工作流级别变量分配给 activity 的 InArgument,方法是在 Activity 的属性面板中将变量分配给 InArgument。

变量也有范围,因此如果您有嵌套的工作流活动,您可以将变量限制在嵌套的工作流而不是整个工作流。

参数只存在于输入它们的容器中。 因此,如果您想将工作流中的参数传递给 Activity,则必须将该参数作为参数添加到 Activity.

的“属性”面板中的 InArgument。

您可以从 Activity 输出到参数或变量,方法是将参数或变量作为参数添加到 Activity 的“属性”面板中的 OutArgument。