我有一个由许多自定义活动组成的工作流程。所有这些活动都需要访问工作流本身的启动参数。我可以在所有这些自定义活动中定义InArgument,并将工作流参数绑定到自定义活动参数,但我对此解决方案不太熟悉。从自定义活动访问工作流程级别参数和变量声明的最佳方式是什么?我可以从ActivityContext获取它们吗?从自定义活动访问参数,工作流程变量
谢谢。
我有一个由许多自定义活动组成的工作流程。所有这些活动都需要访问工作流本身的启动参数。我可以在所有这些自定义活动中定义InArgument,并将工作流参数绑定到自定义活动参数,但我对此解决方案不太熟悉。从自定义活动访问工作流程级别参数和变量声明的最佳方式是什么?我可以从ActivityContext获取它们吗?从自定义活动访问参数,工作流程变量
谢谢。
我们用我们的自定义活动看过这种方法的一种方法是使用ActivityContext中提供的Properties属性。我们与这在execute方法增加了一个ExecutionProperty的InArgument的活动,让你结束了:
public InArgument<Custom> MyObject {get;set;}
...
context.Properties.Add("Contact",MyObject.Get(context));
然后在你的其他活动,你可以检查,看看是否到此已经设置
context.Properties.Find("Contact")
显然,如果你这样做了很多,我建议使用固定的地方,而不是神奇的字符串,但它应该保存您不必在添加相同的参数在设计时重新结束。
好的文章在这:http:// blogs。 msdn.com/b/tilovell/archive/2009/12/20/workflow-scopes-and-execution-properties.aspx – TrueWill 2010-12-02 21:47:01
使用工作流数据上下文。看到这个链接http://blogs.msdn.com/b/tilovell/archive/2011/08/09/wf4-lesser-known-wf-features-workflowdatacontext.aspx – kiran 2016-02-26 06:34:07