如何在代码中创建 WF 规则?
我正在为 WF 中的自定义活动创建一个 ActivityToolboxItem 。 我试图在 CreateComponentsCore 方法中为设计人员做尽可能多的工作。 我想要得到的结果如下:
1)我的自定义活动(TriggerActivity,SequenceActivity),包含以下内容:
2) 一个TriggerEvaluatorActivity(一个简单的Activity),它绑定到TriggerActivity
上的一个属性 3) 一个IfElseActivity,有两个分支
4) 一个 IfElseBranchActivity 包含
5) TerminateActivity,以及
6) 一个空的 IfElseBranchActivity,当 TriggerEvaluatorActivity 计算结果为 true 时,执行将流经该活动。
设计人员将 TriggerEvaluatorActivity 替换为一个或多个针对执行上下文执行复杂评估的实现。
在代码中设置它非常简单,但我完全困惑于如何启动一个 ActivityCondition ,它将添加到 IfElseBranchActivity 中以控制执行流程。
我需要做的就是评估 TriggerEvaluatorActivity 上的属性。 我通过代码 dom 创建了一个漂亮的规则,但我无法直接在 IfElseBranchActivity 上设置它,我必须将规则存储在某处并在活动中引用它。
所以,我想我的问题是,一旦我在代码中创建了规则,如何将我的规则从自定义 ActivityToolboxItem 中添加到工作流程中,以便我在代码中构建的活动可以引用它?
I'm creating an ActivityToolboxItem for a custom Activity in WF. I'm trying to do as much work as possible for the designers within the CreateComponentsCore method. What I'm trying to end up with is the following:
1) My custom activity (TriggerActivity, a SequenceActivity), containing the following:
2) A TriggerEvaluatorActivity (a simple Activity), which is bound to a property on the TriggerActivity
3) An IfElseActivity, which has two branches
4) An IfElseBranchActivity that contains
5) A TerminateActivity, and
6) An IfElseBranchActivity that is empty, through which execution flows when the TriggerEvaluatorActivity evaluates to true.
Designers switch out the TriggerEvaluatorActivity with one or more implementations that perform complex evaluations against an execution context.
Its pretty simple to set this up in code, but I'm completely stuck on how to spin up an ActivityCondition that will be added to the IfElseBranchActivity to control the flow of execution.
All I need to do is evaluate a property on the TriggerEvaluatorActivity. I've created a nice lovely Rule via the code dom, but I can't set that directly on the IfElseBranchActivity, I have to stash the rule somewhere and reference it in the activity.
So, I guess my question is, once I've created a rule in code, how do I add my rule to the workflow from within a custom ActivityToolboxItem so that the activities I build in code can reference it?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
根据这个问题MSDN,它存储在根 Activity 下的依赖属性中。 不确定代码示例是否正确。
作品。 这是一些示例代码:
According to this question on MSDN, its stored in a dependency property under the root Activity. Not sure if the code example is correct or not yet.
Works. Here's some sample code:
意愿 -
新规则可能会被标记,直到它们得到验证。 您是否看到添加后是否可以立即直接验证它们?
Will -
It may be that new rules are flagged until they have been validated. Did you see if you could directly validating them immediately after adding them?