static async Task Main(string[] args) { // Setup a service collection. var services = new Microsoft.Extensions.DependencyInjection.ServiceCollection() // Add essential workflow services. .AddElsaCore() // Add Console activities (ReadLine and WriteLine). .AddConsoleActivities() .BuildServiceProvider(); // Get a workflow builder. var workflowBuilder = services.GetRequiredService <IWorkflowBuilder>(); // Define a workflow and add a single activity. var workflowDefinition = workflowBuilder .StartWith <WriteLine>(x => x.TextExpression = new LiteralExpression("Hello world!")) .Build(); // Get a workflow invoker, var invoker = services.GetService <IWorkflowInvoker>(); // Start the workflow. await invoker.StartAsync(workflowDefinition); // Prevent the console from shutting down until user hits a key. System.Console.ReadLine(); }