/// <summary> /// This method evaluate expressions like @([System::TaskName] + [System::TaskID]) or any other operation created using /// ExpressionBuilder /// </summary> /// <param name="mappedParam">The mapped param.</param> /// <param name="variableDispenser">The variable dispenser.</param> /// <returns></returns> public static object EvaluateExpression(string mappedParam, VariableDispenser variableDispenser) { object variableObject; var regex = new Regex(Keys.REGEX_EMAIL, RegexOptions.IgnoreCase); if (regex.IsMatch(mappedParam)) { return(mappedParam); } if (mappedParam.Contains("@")) { var expressionEvaluatorClass = new ExpressionEvaluatorClass { Expression = mappedParam }; expressionEvaluatorClass.Evaluate(DtsConvert.GetExtendedInterface(variableDispenser), out variableObject, false); } else { variableObject = mappedParam; } return(variableObject); }
/// <summary> /// This method evaluate expressions like @([System::TaskName] + [System::TaskID]) or any other operation created using /// ExpressionBuilder /// </summary> /// <param name="mappedParam"></param> /// <param name="variableDispenser"></param> /// <returns></returns> private static object EvaluateExpression(string mappedParam, VariableDispenser variableDispenser) { object variableObject = null; try { var expressionEvaluatorClass = new ExpressionEvaluatorClass { Expression = mappedParam }; expressionEvaluatorClass.Evaluate(DtsConvert.GetExtendedInterface(variableDispenser), out variableObject, false); } catch { variableObject = mappedParam; } return(variableObject); }