使用XAML + X动态创建WWF工作流:名称不起作用

时间:2011-05-05 10:24:54

标签: c# .net-4.0 workflow-foundation-4

我正在创建一个自定义工作流活动,这些活动有一个基类,如下所示

public class BaseClass : SequenceActivity
{ }

public class Activity1 : BaseClass
{ }

public class Activity2 : BaseClass
{ }

然后我写下工作流程的xoml,如下所示

<GS1:Activity1 x:Name="Activity2"></GS1:Activity1>
<GS1:Activity2 x:Name="Activity3"></GS1:Activity2>

一切正常,直到我想开始工作流程

workflowRuntime.CreateWorkflow(Type.GetType("WorkflowType Full Name"), null, Guid.NewGuid());

我收到以下错误

error 1538: Activity 'BaseClass' validation failed: There is already an activity named 'BaseClass'. Activity names must be unique.

请注意,上面的内容在WF3.5上运行正常,当我升级到WF4.0时出现此错误。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

看起来你在这里结合了WF3和WF4类。它有点令人困惑,因为它们相似并且都有一个Activity类但没有关系。 WorkflowRuntime是WF3类型。使用WF4,您可以使用WorkflowApplication或WorkflowInvoker来运行工作流程。