internal static IEnumerable <ColumnExpression> GetProjectedColumns(JoinExpression join) { IEnumerable <ColumnExpression> projectedColumns; if (join.Left is FromExpression) { projectedColumns = ((FromExpression)join.Left).GetProjectedColumns(); } else { projectedColumns = GetProjectedColumns((JoinExpression)join.Left); } if (join.Right is FromExpression) { projectedColumns = projectedColumns.Concat(((FromExpression)join.Right).GetProjectedColumns()); } else { projectedColumns = projectedColumns.Concat(GetProjectedColumns((JoinExpression)join.Right)); } return(projectedColumns); }
internal static IEnumerable<ColumnExpression> GetProjectedColumns(JoinExpression join) { IEnumerable<ColumnExpression> projectedColumns; if (join.Left is FromExpression) projectedColumns = ((FromExpression)join.Left).GetProjectedColumns(); else projectedColumns = GetProjectedColumns((JoinExpression)join.Left); if (join.Right is FromExpression) projectedColumns = projectedColumns.Concat(((FromExpression)join.Right).GetProjectedColumns()); else projectedColumns = projectedColumns.Concat(GetProjectedColumns((JoinExpression)join.Right)); return projectedColumns; }