【问题标题】:Accessing Arguments, Workflow Variables from custom activities从自定义活动访问参数、工作流变量
【发布时间】:2010-05-26 17:17:31
【问题描述】:

我有一个由许多自定义活动组成的工作流程。所有这些活动都需要访问工作流本身的启动参数。我可以在所有这些自定义活动中定义 InArgument 并将工作流参数绑定到自定义活动参数,但我对这个解决方案不满意。从自定义活动访问工作流级别参数和变量声明的最佳方式是什么。我可以从 ActivityContext 中获取它们吗?

谢谢。

【问题讨论】:

标签: workflow-foundation-4


【解决方案1】:

我们通过自定义活动查看此问题的一种方法是使用 ActivityContext 中可用的 Properties 属性。我们有一个带有 InArgument 的活动,它在 execute 方法中添加了一个 ExecutionProperty,所​​以你最终得到:

public InArgument<Custom> MyObject {get;set;}

...

context.Properties.Add("Contact",MyObject.Get(context));

然后在您的其他活动中,您可以检查是否已设置此设置

context.Properties.Find("Contact")

显然,如果您经常这样做,我建议您在某处使用常量而不是魔术字符串,但这样可以避免您在设计时一遍又一遍地添加相同的参数。

【讨论】:

猜你喜欢
  • 2023-03-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多