我有一个工作流服务主机。在工作流服务中,我有一个活动ExecuteCounterActivity
public sealed class ExecuteCounterActivity : CodeActivity
{
// If your activity returns a value, derive from CodeActivity<TResult>
// and return the value from the Execute method.
protected override void Execute(CodeActivityContext context)
{
var workflowInstanceId = context.WorkflowInstanceId;
var workflowApplication = new WorkflowApplication(new CounterActivity());
workflowApplication.Run();
}
}
工作流instanceid =&#34; 06DD16A5-D4B2-4907-A6FF-CA6021E66D75&#34;当我通过代码获得: context.WorkflowInstanceId
在ExecuteCounterActivity中,我新增了一个Workflow应用程序 CounterActivity 。因此,在CounterActivity中。我得到workflowInstaceId,它将返回一个新的实例Id:&#34; 444FEC86-62C1-4AAC-A857-9B9559051E63&#34;
我的期望:CounterActivity中的工作流instanceId与ExecuteCounterActivity中的instanceId相同。
目前,我没有任何解决方案,有人能告诉我解决问题的方法吗?
答案 0 :(得分:1)
您可以尝试使用其他方法,使用合成活动或安排它:
protected override void Execute(CodeActivityContext context)
{
context.ScheduleActivity(new CounterActivity());
}