27 OriginalColumnNames = originalColumnNames;
28 AliasColumnNames = aliasColumnNames;
37 public ObjectName[] OriginalColumnNames {
get;
private set; }
39 public ObjectName[] AliasColumnNames {
get;
private set; }
42 var table = Child.Evaluate(context);
43 return table.Subset(OriginalColumnNames, AliasColumnNames);
47 var aliases =
new ObjectName[AliasColumnNames.Length];
48 for (
int i = 0; i < aliases.Length; i++) {
49 aliases[i] =
new ObjectName(parentName, aliases[i].Name);
52 AliasColumnNames = aliases;
56 data.
SetValue(
"OriginalColumns", OriginalColumnNames);
57 data.
SetValue(
"AliasColumns", AliasColumnNames);
Defines the contract to access the data contained into a table of a database.
A IQueryPlanNode with a single child.
A query to the database to select data from a set of tables and columns.
override ITable Evaluate(IRequest context)
void SetAliasParentName(ObjectName parentName)
void SetValue(string key, Type type, object value)
Describes the name of an object within a database.
A node element of a query plan tree. /summary>
SubsetNode(ObjectData data)
SubsetNode(IQueryPlanNode child, ObjectName[] originalColumnNames, ObjectName[] aliasColumnNames)
object GetValue(string key)
override void GetData(SerializeData data)