Ejemplo n.º 1
0
        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}"
                });
            }
        }