private void AttachOutcomes(Step source, Type dataType, WorkflowStep step) { if (!string.IsNullOrEmpty(source.NextStepId)) { step.Outcomes.Add(new ValueOutcome() { ExternalNextStepId = $"{source.NextStepId}" }); } foreach (var nextStep in source.SelectNextStep) { Expression <Func <ExpandoObject, object, bool> > sourceExpr = (data, outcome) => _expressionEvaluator.EvaluateOutcomeExpression(nextStep.Value, data, outcome); step.Outcomes.Add(new ExpressionOutcome <ExpandoObject>(sourceExpr) { ExternalNextStepId = $"{nextStep.Key}" }); } }