Table of Contents

Class StepResult<T>

Namespace
FlowOrchestrator.Core.Execution
Assembly
FlowOrchestrator.Core.dll

Typed IStepResult that carries a strongly-typed Value. The Result property round-trips through JSON conversion so downstream steps can retrieve the value regardless of how the result was stored.

public sealed class StepResult<T> : IStepResult

Type Parameters

T

The CLR type of the step output value.

Inheritance
StepResult<T>
Implements
Inherited Members

Properties

DelayNextStep

When non-null, the orchestrator schedules the next step invocation after this delay instead of enqueueing it immediately (used by PollableStepHandler<TInput>).

public TimeSpan? DelayNextStep { get; set; }

Property Value

TimeSpan?

DispatchHint

Optional hint instructing the engine to spawn dynamic child steps after this step completes. null (the default) means the engine continues using the static DAG only. Used by ForEachStepHandler to fan out loop iterations without calling the dispatcher directly.

public StepDispatchHint? DispatchHint { get; set; }

Property Value

StepDispatchHint

FailedReason

Human-readable error message recorded when Status is Failed.

public string? FailedReason { get; set; }

Property Value

string

Key

The key of the step that produced this result. Set automatically if not populated by the handler.

public string Key { get; set; }

Property Value

string

ReThrow

When true, the orchestrator rethrows the step's exception after recording it, allowing Hangfire's built-in retry policy to kick in.

public bool ReThrow { get; set; }

Property Value

bool

Result

Gets or sets Value via JSON round-trip conversion. The setter accepts any raw value (e.g. a JsonElement) and deserialises it to T.

public object? Result { get; set; }

Property Value

object

Status

Terminal or intermediate status of the step. A Pending status with DelayNextStep instructs Hangfire to reschedule (polling pattern).

public StepStatus Status { get; set; }

Property Value

StepStatus

Value

Strongly-typed output value produced by the step.

public T? Value { get; set; }

Property Value

T