Dapr 1.7 introduces the Workflow building block. It is a direct competitor to Azure Durable Functions but runtime-agnostic.
public class OrderWorkflow : Workflow<OrderPayload, OrderResult>
{
public override async Task<OrderResult> RunAsync(OrderPayload input)
{
await CallActivityAsync("ValidateOrder", input);
await CallActivityAsync("ProcessPayment", input);
await CallActivityAsync("ShipOrder", input);
return new OrderResult { Success = true };
}
}
The workflow state is durably stored by Dapr, allowing it to resume after crashes.
Discover more from C4: Container, Code, Cloud & Context
Subscribe to get the latest posts sent to your email.