2.2 KiB
Task Chaining Pattern
This tutorial demonstrates how to chain multiple tasks together as a sequence in a workflow. For more information about the task chaining pattern see the Dapr docs.
Inspect the code
Open the ChainingWorkflow.cs
file in the tutorials/workflow/csharp/task-chaining/TaskChaining
folder. This file contains the definition for the workflow.
graph LR
SW((Start
Workflow))
A1[Activity1]
A2[Activity2]
A3[Activity3]
EW((End
Workflow))
SW --> A1
A1 --> A2
A2 --> A3
A3 --> EW
Run the tutorial
-
Use a terminal to navigate to the
tutorials/workflow/csharp/task-chaining
folder. -
Build the project using the .NET CLI.
dotnet build ./TaskChaining/
-
Use the Dapr CLI to run the Dapr Multi-App run file
```bash
dapr run -f .
<!-- END_STEP -->
-
Use the POST request in the
chaining.http
file to start the workflow, or use this cURL command:curl -i --request POST http://localhost:5255/start
The input for the workflow is a string with the value
This
. The expected app logs are as follows:== APP - chaining == Activity1: Received input: This. == APP - chaining == Activity2: Received input: This is. == APP - chaining == Activity3: Received input: This is task.
-
Use the GET request in the
chaining.http
file to get the status of the workflow, or use this cURL command:curl --request GET --url http://localhost:3555/v1.0/workflows/dapr/<INSTANCEID>
Where
<INSTANCEID>
is the workflow instance ID you received in theLocation
header in the previous step.The expected serialized output of the workflow is:
"\"This is task chaining\""
-
Stop the Dapr Multi-App run process by pressing
Ctrl+C
.