gpt4 book ai didi

c# - 如何获取 ActivityContext 以获得 InArgument 的值

转载 作者:行者123 更新时间:2023-11-30 16:26:08 24 4
gpt4 key购买 nike

我目前正在研究 Workflow Foundation。我有一个包含参数的事件:

System.Activities.InArgument<double> Temperature

但是,我想在我的事件中获取此参数的值,以便对其进行一些验证(并根据此参数在我的事件中设置属性)。我知道有一个 Get 方法需要 ActivityContext ,因此实际值将在运行时已知。我的问题是,如何获取 ActivityContext,或者有更好的方法吗?

注意:我正在托管 WorkflowDesigner在我的应用程序中,我将我的事件放在上面。因此,Activity1 包含一个属性“Temperature”,并将其作为 InArgument 传递到 Activity2 中。然后我验证 Activity2,但到目前为止无法获得 ActivityContext。我在执行时不需要它,但在设计时需要它。

提前致谢。

最佳答案

听起来您想要使用依赖属性,就像他们在 WF3 中那样,在设计时将 activity1 的输出绑定(bind)到 activity2 的输入。对吗?

在 WF4 重写中,他们删除了所有允许这样做的依赖属性。

具体说到在设计时访问 ActivityContext 项目:我认为这不可能。 AC 对象是在事件执行时创建的。它允许一个事件的一个实例被执行多次(循环的每次迭代都有一个单独的 AC 对象与之关联,因为 AC 对象是运行时创建的)。

Here是一篇很好的 Microsoft 博客文章,描述了 WF3 和 WF4 事件运行时执行之间的区别。我认为这可能有助于阐明您想要做什么以及如何解决问题。

关于c# - 如何获取 ActivityContext 以获得 InArgument 的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9131018/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com