Workflow foundation 为什么windows工作流运行时正在创建我的工作流的两个实例?

Workflow foundation 为什么windows工作流运行时正在创建我的工作流的两个实例?,workflow-foundation,workflow-activity,Workflow Foundation,Workflow Activity,调试生产代码时,我发现我的工作流构造函数被多次触发。我不想因为这一点马上责怪WWF,因为有一种哲学——“在责怪别人之前先检查你的代码”。我创建了一个示例应用程序来测试这个方面,发现正在创建两个worklow实例。理想情况下,应该只创建一个实例。想知道为什么WWF运行时要创建两个实例 代码列表: public partial class TestWorkflow : SequentialWorkflowActivity { public TestWorkflow() {

调试生产代码时,我发现我的工作流构造函数被多次触发。我不想因为这一点马上责怪WWF,因为有一种哲学——“在责怪别人之前先检查你的代码”。我创建了一个示例应用程序来测试这个方面,发现正在创建两个worklow实例。理想情况下,应该只创建一个实例。想知道为什么WWF运行时要创建两个实例

代码列表:

public partial class TestWorkflow : SequentialWorkflowActivity
{
    public TestWorkflow()
    {
        InitializeComponent();
        countOfInstances++;
    }

    protected override ActivityExecutionStatus Execute(ActivityExecutionContext executionContext)
    {
        Console.WriteLine("Instances Created = {0}", countOfInstances);
        return base.Execute(executionContext);
    }

    private static int countOfInstances = 0;
}

谢谢。

WF3在很多情况下都是克隆活动来完成工作的。这可能就是为什么会发生这种情况。WF4并没有将此作为WF4中的许多改进和性能优化之一。

很高兴看到我非常敬佩的人的响应。我是你第九频道节目的粉丝。如果您能再看一次我的WWF查询,我将不胜感激: