我们正在尝试更改我们的业务流程,以便通过WF4实施。 我们的业务流程如下:
我们如何在WF4中实现这一目标?
答案 0 :(得分:0)
也许您可以在处理程序活动中定义必需的属性(转换活动)。然后在处理程序的 CacheMetadata 覆盖中,您可以验证它们是否被提供。在处理程序活动的执行方法结束时,您可以使用工作流运行时计划指定的转换活动。如下所示:
public sealed class MyHandlerActivity : NativeActivity
{
public MyHandlerActivity NextHandler
{
get;
set;
}
protected override void CacheMetadata(NativeActivityMetadata metadata)
{
// Ensure next handler is supplied.
if (this.NextHandler == null)
{
metadata.AddValidationError("Next handler is not assigned.");
return;
}
// Let the workflow runtime that this activity could schedule another activity (the handler activity).
metadata.AddChild(this.NextHandler);
}
protected override void Execute(NativeActivityContext context)
{
// TODO: Handler should do something here.
// Schedule the next handler.
context.ScheduleActivity(this.NextHandler);
}
}