ELSA is a workflow engine for .NET Core. It is a library that can be used to build workflow applications. It is also a standalone application that can be used to run workflows.
It is included in this ASP.NET Core samples repository because I believe that a workflow engine can play a very substiantial role in the future of ASP.NET Core applications.
This sample demonstrates a very simple workflow Activity that writes a line to the console.
This sample demonstrates the
Sequence
activity. TheSequence
activity is a container activity that contains other activities. TheSequence
activity executes the activities in the order they are added to the workflow.This sample demonstrates the
If
activity. TheIf
activity is a container activity that contains two activities. The first activity is executed if the condition is true. The second activity is executed if the condition is false.This sample demonstrates the
SetVariable
activity. TheSetVariable
activity is used to set a variable in the workflow.This sample demonstrates the
While
activity. TheWhile
activity has aCondition
property that is used to specify the condition on when the workflow continues to be executed.This samples demonstrates the
For
activity. We useFor
activity to execute a workflow in a loop within specified parameters.This samples demonstrates the use of
ForEach
activity. We useForEach
activity to execute a workflow in a loop based on a given collection.Composite Activity is a way to encapsulate a set of activities into a single activity.
Fork Activity allows you to split a workflow into two or more branches, each with its own set of actions. All the branches in the workflow must be completed before the worfklow con continue to the next step after the fork.
This sample demonstrates on how to set and use variables in a fork activity.
This sample demonstrates on how to create a custom workflow and pass a variable to it.
This sample shows how to set up custom properties for a workflow. We also use the basic workflow properties such as
DefinitionId
,Description
, etc.This sample demonstrates on how to create a workflow that returns result.
This sample demonstrates on how to create a workflow that take runtime inputs.
This sample demonstrates on how to pass values to a workflow via constructor.