42 int sz = ascending.Length;
43 for (
int n = 0; n < sz - 1; ++n) {
46 for (
int p = n + 1; p < sz; ++p) {
47 ascending[p] = !ascending[p];
52 ColumnNames = columnNames;
53 Ascending = ascending;
59 Ascending = data.
GetValue<
bool[]>(
"Ascending");
64 public bool[] Ascending {
get;
private set; }
67 var t = Child.Evaluate(context);
68 return t.OrderBy(ColumnNames, Ascending);
72 data.
SetValue(
"Columns", ColumnNames);
73 data.
SetValue(
"Ascending", Ascending);
Defines the contract to access the data contained into a table of a database.
A IQueryPlanNode with a single child.
SortNode(IQueryPlanNode child, ObjectName[] columnNames, bool[] ascending)
void SetValue(string key, Type type, object value)
Describes the name of an object within a database.
SortNode(ObjectData data)
A node element of a query plan tree. /summary>
override ITable Evaluate(IRequest context)
override void GetData(SerializeData data)
object GetValue(string key)