是否可以通过编程方式修改状态机Windows工作流的定义?

时间:2012-05-15 19:10:48

标签: workflow-foundation-4 state-machine-workflow

我有一个状态机窗口工作流程,我想以编程方式进行修改。例如,我可能希望添加从状态A到状态B的转换,甚至在状态A和状态B之间添加新状态。

请注意,我不需要修改正在运行的Windows工作流实例,而是修改Windows工作流定义本身。

首先,我将拥有代表工作流程的xaml文件。我可以完成上述任务的一种方法是直接修改Windows工作流xaml文件,但我担心这会有风险和困难。我希望有一些编程接口来操作工作流程。

我注意到System.Activities命名空间中的一些内容,特别是我可以从工作流定义xaml文件创建一个Activity。但是,一旦我开展了这项活动,我就无法弄清楚如何操纵它。

这可能吗?

1 个答案:

答案 0 :(得分:0)

有一种方法可以做到这一点,至少我想做什么。

ActivityXamlServices.CreateBuilderReader()从工作流定义创建一个ActivityBuilder,ActivityBuilder可用于修改工作流定义。

谢谢, 埃里克