AppFlow

Flow orchestration framework for .NET applications

Is a flow management library for .NET applications.

Is easy to set up, has a fluent orchestration API, and runs on all recent .NET platforms.

Host.CreateDefaultBuilder(args)
.ConfigureServices((hostContext, services) =>
{
    services.AddTransient<InitCounterWorker>();
    services.AddTransient<IfWorker>();
    services.AddTransient<WhileWorker>();
    services.AddTransient<FinishWorker>();
})
.RegisterServiceFlow(flow =>
{
    flow.UseAppTask<InitCounterWorker>()
    .UseIfBranch(ctx => ctx.HasCounter(), branchFlow =>
    {
        branchFlow
        .UseAppTask<IfWorker>()
        .UseAppTask<IfWorker>()
        .UseWhileBranch(ctx => ctx.GetCounter() < 5, branchFlow =>
        {
            branchFlow.UseAppTask<WhileWorker>();
        });
    }, false)
    .UseAppTask<FinishWorker>();
});
                                

AppFlow Documentation

AppFlow documentation is the first place to go for help. It includes code samples.

Stack Overflow

Stack Overflow is a great place to ask questions.