.Net工作流elsa-workflows官方文档学习:工作流相关概念

网页:https://elsa-workflows.github.io/elsa-core/docs/concepts-workflows

工作流(Workflow)

工作流由一系列步骤组成,这些步骤称为活动(Activity)。工作流维护各种信息,例如:

  • 当前正在执行哪个活动
  • 设置了哪些变量
  • 哪些活动阻塞了执行

一个活动完成执行后,工作流将检查其结果以及是否有其他活动与其连接。 如果是这样,则计划执行该活动。

一直进行下去,直到不再有要执行的活动,或者遇到指示停止工作流的活动。

活动(Activity)

活动是一个基本的构建块,代表工作流程中的单个可执行步骤。 活动需要实现OnExecute方法。

阻塞活动(Blocking Activity)

活动的执行有多种可能的结果,比较常用的是继续(Outcome)和暂停(Halt)。 

如果返回暂停(Halt),工作流将进入“暂停”状态,并且该活动将被注册为阻塞活动。

暂停工作流(Halted Workflow)

暂停工作流被一项或多项阻塞活动所阻止,恢复的唯一方法是使用阻塞活动重新触发它。

连接(Connection)

表示两个活动之间的关联关系。工作流借此知道下一步要执行什么活动。连接包含3方面信息:

  •  源(source)活动ID。
  • 源结果(source outcome)名称。
  • 目的(destination)活动ID。

根据活动的每个可能结果,都可以关联另一个活动。

例如,假设有一个工作流,其中包含三个活动,分别称为活动A,活动B和活动C。活动A有两个结果,分别称为完成和失败,并且我们希望将完成结果连接到活动B和失败到活动C。

这意味着我们需要以下两个连接:

连接1:

  • Source: Activity A
  • Outcome: Done
  • Destination: Activity B

连接2:

  • Source: Activity A
  • Outcome: Failed
  • Destination: Activity C

如下示意图:

 

 

  1. 活动A的完成结果。
  2. 活动A的失败结果。
  3. 活动A和活动B之间的连接。
  4. 活动A和活动C之间的连接。

 

 

posted @ 2021-02-21 21:01  顺其自然,道法自然  阅读(2007)  评论(1编辑  收藏  举报