private IList GetValues(DataRow row) { IList result; if (!string.IsNullOrEmpty(this.GroupColumnName)) { result = (row[this.GroupColumnName] as IList); } else { result = (ExpressionCalculator.CalculateLambdaExpression(this.groupColumnExpression, typeof(IList), row, null) as IList); } return(result); }
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); }
public static object CalculateLambdaExpression(ColumnExpression expression, Type dataType, DataRow dataRow, DataRow inputRow) { return(ExpressionCalculator.CalculateLambdaExpression(expression, dataType, null, dataRow, inputRow)); }
private IList <KeyValuePair <string, object> > CalculateCore(DataRow dataRow, DataRow inputRow, IList <ColumnExpression> query) { List <KeyValuePair <string, object> > list = new List <KeyValuePair <string, object> >(); foreach (ColumnExpression columnExpression in query) { list.Add(new KeyValuePair <string, object>(columnExpression.ResultColumn, ExpressionCalculator.CalculateLambdaExpression(columnExpression, this.GetColumnRealDataType(dataRow.Table.Columns[columnExpression.ResultColumn]), dataRow, inputRow))); } return(list); }