Ejemplo n.º 1
0
        public bool IsRunnable(AbstractDataTableFiller filler)
        {
            bool   flag = true;
            string runnableLambdaExpression = this.GetRunnableLambdaExpression(filler);

            if (!string.IsNullOrEmpty(runnableLambdaExpression))
            {
                ColumnExpression expression = ExpressionCalculator.BuildColumnExpression(runnableLambdaExpression);
                flag = (bool)ExpressionCalculator.CalculateLambdaExpression(expression, typeof(bool), null, this.InputTable.Rows[0]);
            }
            if (flag && this.IsResolving)
            {
                flag = (this.PipelineObjects != null && this.PipelineObjects.Length > 0);
            }
            return(flag);
        }
Ejemplo n.º 2
0
        public static ExpressionCalculator Parse(DataTable table, string lambdaExpressionKey)
        {
            IEnumerable <DataColumn> enumerable = from DataColumn o in table.Columns
                                                  where o.ExtendedProperties.Contains(lambdaExpressionKey)
                                                  select o;
            ExpressionCalculator expressionCalculator = new ExpressionCalculator();

            foreach (DataColumn dataColumn in enumerable)
            {
                string           lambdaExpression = dataColumn.ExtendedProperties[lambdaExpressionKey].ToString();
                ColumnExpression columnExpression = ExpressionCalculator.BuildColumnExpression(lambdaExpression);
                columnExpression.ResultColumn = dataColumn.ColumnName;
                expressionCalculator.query.Add(columnExpression);
            }
            return(expressionCalculator);
        }