MacroExpression

Overview

Instances of the MacroExpression class can be used to represent direct calls to the SQL function of the underlying database server.

For example: this SQL expression

DATEADD(DAY, 1, CURRENT_TIMESTAMP)

can be represented as

new MacroExpression("DATEADD",
  new WhereExpression[] { 
    new MacroExpression("DAY"), 
    new ConstantExpression(1), 
    new MacroExpression("CURRENT_TIMESTAMP") });

Please note that a WhereExpression containing a MacroExpression cannot be used to perform Dynamic Where clauses due to security restrictions (allowing it would enable SQL injection attacks via Dynamic Where).

Instead, you can provide a custom DataService method that accepts the WhereExpression parameter and converts it into SQL using the ToSqlString method.

Location

 

constructor

Creates a new instance of the MacroExpression class.

 

constructor

 

MacroExpression()

 

Sub New()

constructor (String)

Creates a new instance of the MacroExpression class and initializes its Name property.

 

constructor(name: String)

 

MacroExpression(String name)

 

Sub New(name As String)

Parameters:

  • name:

constructor (String, array of WhereExpression)

Creates a new instance of the MacroExpression class and initializes its Name property. The method also intializes a list of macro parameters.

 

constructor(name: String; params values: array of WhereExpression)

 

MacroExpression(String name, params WhereExpression[] values)

 

Sub New(name As String, ParamArray values As WhereExpression())

Parameters:

  • name:
  • values:

Add

Adds a provided WhereExpression instance to the list of macro parameter values.

 

method Add(value: WhereExpression)

 

void Add(WhereExpression value)

 

Sub Add(value As WhereExpression)

Parameters:

  • value: The macro parameter to be added.

ApplyFieldMapping (SchemaColumnMappingCollection)    (declared in WhereExpression)

Adjusts the field names in the WhereExpression in accordance with table names of fields in the given schema column mapping.

 

method ApplyFieldMapping(columnMappings: SchemaColumnMappingCollection)

 

void ApplyFieldMapping(SchemaColumnMappingCollection columnMappings)

 

Sub ApplyFieldMapping(columnMappings As SchemaColumnMappingCollection)

Parameters:

  • columnMappings:

ApplyFieldMapping (SchemaColumnMappingCollection)

 

method ApplyFieldMapping(mappings: SchemaColumnMappingCollection)

 

void ApplyFieldMapping(SchemaColumnMappingCollection mappings)

 

Sub ApplyFieldMapping(mappings As SchemaColumnMappingCollection)

Parameters:

  • mappings:

ApplySourceTableNumber

 

method ApplySourceTableNumber(number: Int32): WhereExpression

 

WhereExpression ApplySourceTableNumber(Int32 number)

 

Function ApplySourceTableNumber(number As Int32) As WhereExpression

Parameters:

  • number:

ApplyTableMapping

 

method ApplyTableMapping(schemaTable: String; databaseTable: String)

 

void ApplyTableMapping(String schemaTable, String databaseTable)

 

Sub ApplyTableMapping(schemaTable As String, databaseTable As String)

Parameters:

  • schemaTable:
  • databaseTable:

ApplyTableNameOrAlias

 

method ApplyTableNameOrAlias(name: String)

 

void ApplyTableNameOrAlias(String name)

 

Sub ApplyTableNameOrAlias(name As String)

Parameters:

  • name:

Creates new BinaryExpression from given aLeft and aRight operands, using operator And.

 

class method Combine(left: WhereExpression; right: WhereExpression): WhereExpression

 

static WhereExpression Combine(WhereExpression left, WhereExpression right)

 

Shared Function Combine(left As WhereExpression, right As WhereExpression) As WhereExpression

Parameters:

  • left:
  • right:

 

class method Combine(left: WhereExpression; right: WhereExpression; operator: BinaryOperator): WhereExpression

 

static WhereExpression Combine(WhereExpression left, WhereExpression right, BinaryOperator operator)

 

Shared Function Combine(left As WhereExpression, right As WhereExpression, operator As BinaryOperator) As WhereExpression

Parameters:

  • left:
  • right:
  • operator:

Count

Gets a count of defined macro parameters.

 

property Count: Int32 read;

 

Int32 Count { get; }

 

ReadOnly Property Count() As Int32

DYN_WHERE_BETWEEN  protected    (declared in WhereExpression)

 

const DYN_WHERE_BETWEEN: String = "between";

 

const String DYN_WHERE_BETWEEN = "between"

 

Dim DYN_WHERE_BETWEEN As String = "between"

DYN_WHERE_BINARYOPERATION  protected    (declared in WhereExpression)

 

const DYN_WHERE_BINARYOPERATION: String = "binaryoperation";

 

const String DYN_WHERE_BINARYOPERATION = "binaryoperation"

 

Dim DYN_WHERE_BINARYOPERATION As String = "binaryoperation"

DYN_WHERE_CONSTANT  protected    (declared in WhereExpression)

 

const DYN_WHERE_CONSTANT: String = "constant";

 

const String DYN_WHERE_CONSTANT = "constant"

 

Dim DYN_WHERE_CONSTANT As String = "constant"

DYN_WHERE_DATATYPE  protected    (declared in WhereExpression)

 

const DYN_WHERE_DATATYPE: String = "datatype";

 

const String DYN_WHERE_DATATYPE = "datatype"

 

Dim DYN_WHERE_DATATYPE As String = "datatype"

DYN_WHERE_DATETIMENOW  protected    (declared in WhereExpression)

 

const DYN_WHERE_DATETIMENOW: String = "datetimenow";

 

const String DYN_WHERE_DATETIMENOW = "datetimenow"

 

Dim DYN_WHERE_DATETIMENOW As String = "datetimenow"

DYN_WHERE_DATETIMEPART  protected    (declared in WhereExpression)

 

const DYN_WHERE_DATETIMEPART: String = "datetimepart";

 

const String DYN_WHERE_DATETIMEPART = "datetimepart"

 

Dim DYN_WHERE_DATETIMEPART As String = "datetimepart"

DYN_WHERE_DATETIMETODAY  protected    (declared in WhereExpression)

 

const DYN_WHERE_DATETIMETODAY: String = "datetimetoday";

 

const String DYN_WHERE_DATETIMETODAY = "datetimetoday"

 

Dim DYN_WHERE_DATETIMETODAY As String = "datetimetoday"

DYN_WHERE_EXPRESSION  protected    (declared in WhereExpression)

 

const DYN_WHERE_EXPRESSION: String = "expression";

 

const String DYN_WHERE_EXPRESSION = "expression"

 

Dim DYN_WHERE_EXPRESSION As String = "expression"

DYN_WHERE_FIELD  protected    (declared in WhereExpression)

 

const DYN_WHERE_FIELD: String = "field";

 

const String DYN_WHERE_FIELD = "field"

 

Dim DYN_WHERE_FIELD As String = "field"

DYN_WHERE_FUNCTION  protected    (declared in WhereExpression)

 

const DYN_WHERE_FUNCTION: String = "function";

 

const String DYN_WHERE_FUNCTION = "function"

 

Dim DYN_WHERE_FUNCTION As String = "function"

DYN_WHERE_ITEMS  protected    (declared in WhereExpression)

 

const DYN_WHERE_ITEMS: String = "items";

 

const String DYN_WHERE_ITEMS = "items"

 

Dim DYN_WHERE_ITEMS As String = "items"

DYN_WHERE_KIND  protected    (declared in WhereExpression)

 

const DYN_WHERE_KIND: String = "kind";

 

const String DYN_WHERE_KIND = "kind"

 

Dim DYN_WHERE_KIND As String = "kind"

DYN_WHERE_LEFT  protected    (declared in WhereExpression)

 

const DYN_WHERE_LEFT: String = "left";

 

const String DYN_WHERE_LEFT = "left"

 

Dim DYN_WHERE_LEFT As String = "left"

DYN_WHERE_LIST  protected    (declared in WhereExpression)

 

const DYN_WHERE_LIST: String = "list";

 

const String DYN_WHERE_LIST = "list"

 

Dim DYN_WHERE_LIST As String = "list"

DYN_WHERE_LOWER  protected    (declared in WhereExpression)

 

const DYN_WHERE_LOWER: String = "lower";

 

const String DYN_WHERE_LOWER = "lower"

 

Dim DYN_WHERE_LOWER As String = "lower"

DYN_WHERE_MACRO  protected    (declared in WhereExpression)

 

const DYN_WHERE_MACRO: String = "macro";

 

const String DYN_WHERE_MACRO = "macro"

 

Dim DYN_WHERE_MACRO As String = "macro"

DYN_WHERE_NAME  protected    (declared in WhereExpression)

 

const DYN_WHERE_NAME: String = "name";

 

const String DYN_WHERE_NAME = "name"

 

Dim DYN_WHERE_NAME As String = "name"

DYN_WHERE_NULL  protected    (declared in WhereExpression)

 

const DYN_WHERE_NULL: String = "null";

 

const String DYN_WHERE_NULL = "null"

 

Dim DYN_WHERE_NULL As String = "null"

DYN_WHERE_OPERATOR  protected    (declared in WhereExpression)

 

const DYN_WHERE_OPERATOR: String = "operator";

 

const String DYN_WHERE_OPERATOR = "operator"

 

Dim DYN_WHERE_OPERATOR As String = "operator"

DYN_WHERE_PARAMETER  protected    (declared in WhereExpression)

 

const DYN_WHERE_PARAMETER: String = "parameter";

 

const String DYN_WHERE_PARAMETER = "parameter"

 

Dim DYN_WHERE_PARAMETER As String = "parameter"

DYN_WHERE_PART  protected    (declared in WhereExpression)

 

const DYN_WHERE_PART: String = "part";

 

const String DYN_WHERE_PART = "part"

 

Dim DYN_WHERE_PART As String = "part"

DYN_WHERE_RIGHT  protected    (declared in WhereExpression)

 

const DYN_WHERE_RIGHT: String = "right";

 

const String DYN_WHERE_RIGHT = "right"

 

Dim DYN_WHERE_RIGHT As String = "right"

DYN_WHERE_SIZE  protected    (declared in WhereExpression)

 

const DYN_WHERE_SIZE: String = "size";

 

const String DYN_WHERE_SIZE = "size"

 

Dim DYN_WHERE_SIZE As String = "size"

DYN_WHERE_TABLE  protected    (declared in WhereExpression)

 

const DYN_WHERE_TABLE: String = "table";

 

const String DYN_WHERE_TABLE = "table"

 

Dim DYN_WHERE_TABLE As String = "table"

DYN_WHERE_TYPE  protected    (declared in WhereExpression)

 

const DYN_WHERE_TYPE: String = "type";

 

const String DYN_WHERE_TYPE = "type"

 

Dim DYN_WHERE_TYPE As String = "type"

DYN_WHERE_TYPE_VALUE  protected    (declared in WhereExpression)

 

const DYN_WHERE_TYPE_VALUE: String = "query.where";

 

const String DYN_WHERE_TYPE_VALUE = "query.where"

 

Dim DYN_WHERE_TYPE_VALUE As String = "query.where"

DYN_WHERE_UNARYOPERATION  protected    (declared in WhereExpression)

 

const DYN_WHERE_UNARYOPERATION: String = "unaryoperation";

 

const String DYN_WHERE_UNARYOPERATION = "unaryoperation"

 

Dim DYN_WHERE_UNARYOPERATION As String = "unaryoperation"

DYN_WHERE_UPPER  protected    (declared in WhereExpression)

 

const DYN_WHERE_UPPER: String = "upper";

 

const String DYN_WHERE_UPPER = "upper"

 

Dim DYN_WHERE_UPPER As String = "upper"

DYN_WHERE_VALUE  protected    (declared in WhereExpression)

 

const DYN_WHERE_VALUE: String = "value";

 

const String DYN_WHERE_VALUE = "value"

 

Dim DYN_WHERE_VALUE As String = "value"

ExtractAllConstantExpression

 

method ExtractAllConstantExpression(expressions: List<ConstantExpression>)

 

void ExtractAllConstantExpression(List<ConstantExpression> expressions)

 

Sub ExtractAllConstantExpression(expressions As List<ConstantExpression>)

Parameters:

  • expressions:

ExtractAllFieldNames (List<String>)    (declared in WhereExpression)

Establishes a list of field names used in the WhereExpression.

 

method ExtractAllFieldNames(fieldNames: List<String>)

 

void ExtractAllFieldNames(List<String> fieldNames)

 

Sub ExtractAllFieldNames(fieldNames As List<String>)

Parameters:

  • fieldNames:

ExtractAllFieldNames (List<String>)

 

method ExtractAllFieldNames(fields: List<String>)

 

void ExtractAllFieldNames(List<String> fields)

 

Sub ExtractAllFieldNames(fields As List<String>)

Parameters:

  • fields:

ExtractAllParams

 

method ExtractAllParams(parameters: SchemaParameterCollection)

 

void ExtractAllParams(SchemaParameterCollection parameters)

 

Sub ExtractAllParams(parameters As SchemaParameterCollection)

Parameters:

  • parameters:

FromJsonObject    (declared in WhereExpression)

 

class method FromJsonObject(node: JsonObject): WhereExpression

 

static WhereExpression FromJsonObject(JsonObject node)

 

Shared Function FromJsonObject(node As JsonObject) As WhereExpression

Parameters:

  • node:

FromJsonString    (declared in WhereExpression)

 

class method FromJsonString(json: String): WhereExpression

 

static WhereExpression FromJsonString(String json)

 

Shared Function FromJsonString(json As String) As WhereExpression

Parameters:

  • json:

FromString    (declared in WhereExpression)

Creates new WhereExpression from string, which should contain where node in the correct Dynamic Where XML Format.

 

class method FromString(value: String): WhereExpression

 

static WhereExpression FromString(String value)

 

Shared Function FromString(value As String) As WhereExpression

Parameters:

  • value:

FromStringToSql    (declared in WhereExpression)

 

class method FromStringToSql(xml: String): String

 

static String FromStringToSql(String xml)

 

Shared Function FromStringToSql(xml As String) As String

Parameters:

  • xml:

FromXmlNode    (declared in WhereExpression)

Creates new WhereExpression from xml node, which should be in the correct Dynamic Where XML Format.

 

class method FromXmlNode(node: XmlNode): WhereExpression

 

static WhereExpression FromXmlNode(XmlNode node)

 

Shared Function FromXmlNode(node As XmlNode) As WhereExpression

Parameters:

  • node:

FromXmlString    (declared in WhereExpression)

 

class method FromXmlString(xml: String): WhereExpression

 

static WhereExpression FromXmlString(String xml)

 

Shared Function FromXmlString(xml As String) As WhereExpression

Parameters:

  • xml:

Insert

Inserts a provided WhereExpression instance to the list of macro parameter values at the Position position.

 

method Insert(index: Int32; value: WhereExpression)

 

void Insert(Int32 index, WhereExpression value)

 

Sub Insert(index As Int32, value As WhereExpression)

Parameters:

  • index:
  • value:

Item

Gets or sets a macro parameter at the idx position.

 

property Item[index: Int32]: WhereExpression read write;

 

WhereExpression Item[Int32 index] { get; set; }

 

Property Item(index As Int32) As WhereExpression

Kind

Gets the kind of the current WhereExpression instance. For the MacroExpression class, this property always equals WhereKind.Macro.

 

property Kind: WhereKind read;

 

WhereKind Kind { get; }

 

ReadOnly Property Kind() As WhereKind

Name

Name of the macro expression. Can be considered as name of the underlying SQL function.

 

property Name: String read write;

 

String Name { get; set; }

 

Property Name() As String

ParseExpression (JsonBaseObject): WhereExpression    (declared in WhereExpression)

 

class method ParseExpression(node: JsonBaseObject): WhereExpression

 

static WhereExpression ParseExpression(JsonBaseObject node)

 

Shared Function ParseExpression(node As JsonBaseObject) As WhereExpression

Parameters:

  • node:

ParseExpression (XmlNode): WhereExpression    (declared in WhereExpression)

 

class method ParseExpression(node: XmlNode): WhereExpression

 

static WhereExpression ParseExpression(XmlNode node)

 

Shared Function ParseExpression(node As XmlNode) As WhereExpression

Parameters:

  • node:

ReadFromJson

 

method ReadFromJson(node: JsonObject)

 

void ReadFromJson(JsonObject node)

 

Sub ReadFromJson(node As JsonObject)

Parameters:

  • node:

ReadFromXml

Deserializes the MacroExpression from the provided XmlNode.

 

method ReadFromXml(node: XmlNode)

 

void ReadFromXml(XmlNode node)

 

Sub ReadFromXml(node As XmlNode)

Parameters:

  • node:

Remove

Removes a provided WhereExpression instance from the macro parameters list.

 

method Remove(value: WhereExpression)

 

void Remove(WhereExpression value)

 

Sub Remove(value As WhereExpression)

Parameters:

  • value:

RemoveAt

Removes the macro parameter stored in the macro parameters list at the index position.

 

method RemoveAt(index: Int32)

 

void RemoveAt(Int32 index)

 

Sub RemoveAt(index As Int32)

Parameters:

  • index:

ToJsonString    (declared in WhereExpression)

 

method ToJsonString: String

 

String ToJsonString()

 

Function ToJsonString() As String

ToSQLString    (declared in WhereExpression)

A helper method that wraps the similar one with the string builder and returns a SQL string.

 

method ToSQLString: String

 

String ToSQLString()

 

Function ToSQLString() As String

ToSQLString (StringBuilder)

Converts the current MacroExpression instance to its SQL representation and adds the result of this conversion to the provided StringBuilder.

 

method ToSQLString(destination: StringBuilder)

 

void ToSQLString(StringBuilder destination)

 

Sub ToSQLString(destination As StringBuilder)

Parameters:

  • destination:

ToString    (declared in WhereExpression)

Returns a SQL string representation of the current expression.

 

method ToString: String

 

String ToString()

 

Function ToString() As String

ToXmlNode    (declared in WhereExpression)

Creates query node (in the Dynamic Where XML Format) from WhereExpression.

 

method ToXmlNode: XmlNode

 

XmlNode ToXmlNode()

 

Function ToXmlNode() As XmlNode

ToXmlString    (declared in WhereExpression)

Creates query node (in the Dynamic Where XML Format) from WhereExpression and returns it in the string format.

 

method ToXmlString: String

 

String ToXmlString()

 

Function ToXmlString() As String

Validate    (declared in WhereExpression)

 

method Validate: Boolean

 

Boolean Validate()

 

Function Validate() As Boolean

Validate (WhereExpression): Boolean    (declared in WhereExpression)

Validates that WhereExpression doesn't contain any errors, using WhereValidator. The main purpose of this validation - to scan all objects of WhereExpession tree and make sure that it contains correct field names.

 

class method Validate(expression: WhereExpression): Boolean

 

static Boolean Validate(WhereExpression expression)

 

Shared Function Validate(expression As WhereExpression) As Boolean

Parameters:

  • expression:

WriteExpression    (declared in WhereExpression)

 

class method WriteExpression(node: JsonBaseObject; tag: String; value: WhereExpression)

 

static void WriteExpression(JsonBaseObject node, String tag, WhereExpression value)

 

Shared Sub WriteExpression(node As JsonBaseObject, tag As String, value As WhereExpression)

Parameters:

  • node:
  • tag:
  • value:

WriteToJson

 

method WriteToJson(node: JsonObject)

 

void WriteToJson(JsonObject node)

 

Sub WriteToJson(node As JsonObject)

Parameters:

  • node:

WriteToXml

Serializes the current MacroExpression instance to XML and stores the serialization result in the provided XmlNode.

 

method WriteToXml(node: XmlNode)

 

void WriteToXml(XmlNode node)

 

Sub WriteToXml(node As XmlNode)

Parameters:

  • node:

 

DYN_WHERE_BETWEEN  protected    (declared in WhereExpression)

 

const DYN_WHERE_BETWEEN: String = "between";

 

const String DYN_WHERE_BETWEEN = "between"

 

Dim DYN_WHERE_BETWEEN As String = "between"

DYN_WHERE_BINARYOPERATION  protected    (declared in WhereExpression)

 

const DYN_WHERE_BINARYOPERATION: String = "binaryoperation";

 

const String DYN_WHERE_BINARYOPERATION = "binaryoperation"

 

Dim DYN_WHERE_BINARYOPERATION As String = "binaryoperation"

DYN_WHERE_CONSTANT  protected    (declared in WhereExpression)

 

const DYN_WHERE_CONSTANT: String = "constant";

 

const String DYN_WHERE_CONSTANT = "constant"

 

Dim DYN_WHERE_CONSTANT As String = "constant"

DYN_WHERE_DATATYPE  protected    (declared in WhereExpression)

 

const DYN_WHERE_DATATYPE: String = "datatype";

 

const String DYN_WHERE_DATATYPE = "datatype"

 

Dim DYN_WHERE_DATATYPE As String = "datatype"

DYN_WHERE_DATETIMENOW  protected    (declared in WhereExpression)

 

const DYN_WHERE_DATETIMENOW: String = "datetimenow";

 

const String DYN_WHERE_DATETIMENOW = "datetimenow"

 

Dim DYN_WHERE_DATETIMENOW As String = "datetimenow"

DYN_WHERE_DATETIMEPART  protected    (declared in WhereExpression)

 

const DYN_WHERE_DATETIMEPART: String = "datetimepart";

 

const String DYN_WHERE_DATETIMEPART = "datetimepart"

 

Dim DYN_WHERE_DATETIMEPART As String = "datetimepart"

DYN_WHERE_DATETIMETODAY  protected    (declared in WhereExpression)

 

const DYN_WHERE_DATETIMETODAY: String = "datetimetoday";

 

const String DYN_WHERE_DATETIMETODAY = "datetimetoday"

 

Dim DYN_WHERE_DATETIMETODAY As String = "datetimetoday"

DYN_WHERE_EXPRESSION  protected    (declared in WhereExpression)

 

const DYN_WHERE_EXPRESSION: String = "expression";

 

const String DYN_WHERE_EXPRESSION = "expression"

 

Dim DYN_WHERE_EXPRESSION As String = "expression"

DYN_WHERE_FIELD  protected    (declared in WhereExpression)

 

const DYN_WHERE_FIELD: String = "field";

 

const String DYN_WHERE_FIELD = "field"

 

Dim DYN_WHERE_FIELD As String = "field"

DYN_WHERE_FUNCTION  protected    (declared in WhereExpression)

 

const DYN_WHERE_FUNCTION: String = "function";

 

const String DYN_WHERE_FUNCTION = "function"

 

Dim DYN_WHERE_FUNCTION As String = "function"

DYN_WHERE_ITEMS  protected    (declared in WhereExpression)

 

const DYN_WHERE_ITEMS: String = "items";

 

const String DYN_WHERE_ITEMS = "items"

 

Dim DYN_WHERE_ITEMS As String = "items"

DYN_WHERE_KIND  protected    (declared in WhereExpression)

 

const DYN_WHERE_KIND: String = "kind";

 

const String DYN_WHERE_KIND = "kind"

 

Dim DYN_WHERE_KIND As String = "kind"

DYN_WHERE_LEFT  protected    (declared in WhereExpression)

 

const DYN_WHERE_LEFT: String = "left";

 

const String DYN_WHERE_LEFT = "left"

 

Dim DYN_WHERE_LEFT As String = "left"

DYN_WHERE_LIST  protected    (declared in WhereExpression)

 

const DYN_WHERE_LIST: String = "list";

 

const String DYN_WHERE_LIST = "list"

 

Dim DYN_WHERE_LIST As String = "list"

DYN_WHERE_LOWER  protected    (declared in WhereExpression)

 

const DYN_WHERE_LOWER: String = "lower";

 

const String DYN_WHERE_LOWER = "lower"

 

Dim DYN_WHERE_LOWER As String = "lower"

DYN_WHERE_MACRO  protected    (declared in WhereExpression)

 

const DYN_WHERE_MACRO: String = "macro";

 

const String DYN_WHERE_MACRO = "macro"

 

Dim DYN_WHERE_MACRO As String = "macro"

DYN_WHERE_NAME  protected    (declared in WhereExpression)

 

const DYN_WHERE_NAME: String = "name";

 

const String DYN_WHERE_NAME = "name"

 

Dim DYN_WHERE_NAME As String = "name"

DYN_WHERE_NULL  protected    (declared in WhereExpression)

 

const DYN_WHERE_NULL: String = "null";

 

const String DYN_WHERE_NULL = "null"

 

Dim DYN_WHERE_NULL As String = "null"

DYN_WHERE_OPERATOR  protected    (declared in WhereExpression)

 

const DYN_WHERE_OPERATOR: String = "operator";

 

const String DYN_WHERE_OPERATOR = "operator"

 

Dim DYN_WHERE_OPERATOR As String = "operator"

DYN_WHERE_PARAMETER  protected    (declared in WhereExpression)

 

const DYN_WHERE_PARAMETER: String = "parameter";

 

const String DYN_WHERE_PARAMETER = "parameter"

 

Dim DYN_WHERE_PARAMETER As String = "parameter"

DYN_WHERE_PART  protected    (declared in WhereExpression)

 

const DYN_WHERE_PART: String = "part";

 

const String DYN_WHERE_PART = "part"

 

Dim DYN_WHERE_PART As String = "part"

DYN_WHERE_RIGHT  protected    (declared in WhereExpression)

 

const DYN_WHERE_RIGHT: String = "right";

 

const String DYN_WHERE_RIGHT = "right"

 

Dim DYN_WHERE_RIGHT As String = "right"

DYN_WHERE_SIZE  protected    (declared in WhereExpression)

 

const DYN_WHERE_SIZE: String = "size";

 

const String DYN_WHERE_SIZE = "size"

 

Dim DYN_WHERE_SIZE As String = "size"

DYN_WHERE_TABLE  protected    (declared in WhereExpression)

 

const DYN_WHERE_TABLE: String = "table";

 

const String DYN_WHERE_TABLE = "table"

 

Dim DYN_WHERE_TABLE As String = "table"

DYN_WHERE_TYPE  protected    (declared in WhereExpression)

 

const DYN_WHERE_TYPE: String = "type";

 

const String DYN_WHERE_TYPE = "type"

 

Dim DYN_WHERE_TYPE As String = "type"

DYN_WHERE_TYPE_VALUE  protected    (declared in WhereExpression)

 

const DYN_WHERE_TYPE_VALUE: String = "query.where";

 

const String DYN_WHERE_TYPE_VALUE = "query.where"

 

Dim DYN_WHERE_TYPE_VALUE As String = "query.where"

DYN_WHERE_UNARYOPERATION  protected    (declared in WhereExpression)

 

const DYN_WHERE_UNARYOPERATION: String = "unaryoperation";

 

const String DYN_WHERE_UNARYOPERATION = "unaryoperation"

 

Dim DYN_WHERE_UNARYOPERATION As String = "unaryoperation"

DYN_WHERE_UPPER  protected    (declared in WhereExpression)

 

const DYN_WHERE_UPPER: String = "upper";

 

const String DYN_WHERE_UPPER = "upper"

 

Dim DYN_WHERE_UPPER As String = "upper"

DYN_WHERE_VALUE  protected    (declared in WhereExpression)

 

const DYN_WHERE_VALUE: String = "value";

 

const String DYN_WHERE_VALUE = "value"

 

Dim DYN_WHERE_VALUE As String = "value"

 

Count

Gets a count of defined macro parameters.

 

property Count: Int32 read;

 

Int32 Count { get; }

 

ReadOnly Property Count() As Int32

Item

Gets or sets a macro parameter at the idx position.

 

property Item[index: Int32]: WhereExpression read write;

 

WhereExpression Item[Int32 index] { get; set; }

 

Property Item(index As Int32) As WhereExpression

Kind

Gets the kind of the current WhereExpression instance. For the MacroExpression class, this property always equals WhereKind.Macro.

 

property Kind: WhereKind read;

 

WhereKind Kind { get; }

 

ReadOnly Property Kind() As WhereKind

Name

Name of the macro expression. Can be considered as name of the underlying SQL function.

 

property Name: String read write;

 

String Name { get; set; }

 

Property Name() As String

 

Creates new BinaryExpression from given aLeft and aRight operands, using operator And.

 

class method Combine(left: WhereExpression; right: WhereExpression): WhereExpression

 

static WhereExpression Combine(WhereExpression left, WhereExpression right)

 

Shared Function Combine(left As WhereExpression, right As WhereExpression) As WhereExpression

Parameters:

  • left:
  • right:

 

class method Combine(left: WhereExpression; right: WhereExpression; operator: BinaryOperator): WhereExpression

 

static WhereExpression Combine(WhereExpression left, WhereExpression right, BinaryOperator operator)

 

Shared Function Combine(left As WhereExpression, right As WhereExpression, operator As BinaryOperator) As WhereExpression

Parameters:

  • left:
  • right:
  • operator:

FromJsonObject    (declared in WhereExpression)

 

class method FromJsonObject(node: JsonObject): WhereExpression

 

static WhereExpression FromJsonObject(JsonObject node)

 

Shared Function FromJsonObject(node As JsonObject) As WhereExpression

Parameters:

  • node:

FromJsonString    (declared in WhereExpression)

 

class method FromJsonString(json: String): WhereExpression

 

static WhereExpression FromJsonString(String json)

 

Shared Function FromJsonString(json As String) As WhereExpression

Parameters:

  • json:

FromString    (declared in WhereExpression)

Creates new WhereExpression from string, which should contain where node in the correct Dynamic Where XML Format.

 

class method FromString(value: String): WhereExpression

 

static WhereExpression FromString(String value)

 

Shared Function FromString(value As String) As WhereExpression

Parameters:

  • value:

FromStringToSql    (declared in WhereExpression)

 

class method FromStringToSql(xml: String): String

 

static String FromStringToSql(String xml)

 

Shared Function FromStringToSql(xml As String) As String

Parameters:

  • xml:

FromXmlNode    (declared in WhereExpression)

Creates new WhereExpression from xml node, which should be in the correct Dynamic Where XML Format.

 

class method FromXmlNode(node: XmlNode): WhereExpression

 

static WhereExpression FromXmlNode(XmlNode node)

 

Shared Function FromXmlNode(node As XmlNode) As WhereExpression

Parameters:

  • node:

FromXmlString    (declared in WhereExpression)

 

class method FromXmlString(xml: String): WhereExpression

 

static WhereExpression FromXmlString(String xml)

 

Shared Function FromXmlString(xml As String) As WhereExpression

Parameters:

  • xml:

ParseExpression (JsonBaseObject): WhereExpression    (declared in WhereExpression)

 

class method ParseExpression(node: JsonBaseObject): WhereExpression

 

static WhereExpression ParseExpression(JsonBaseObject node)

 

Shared Function ParseExpression(node As JsonBaseObject) As WhereExpression

Parameters:

  • node:

ParseExpression (XmlNode): WhereExpression    (declared in WhereExpression)

 

class method ParseExpression(node: XmlNode): WhereExpression

 

static WhereExpression ParseExpression(XmlNode node)

 

Shared Function ParseExpression(node As XmlNode) As WhereExpression

Parameters:

  • node:

Validate (WhereExpression): Boolean    (declared in WhereExpression)

Validates that WhereExpression doesn't contain any errors, using WhereValidator. The main purpose of this validation - to scan all objects of WhereExpession tree and make sure that it contains correct field names.

 

class method Validate(expression: WhereExpression): Boolean

 

static Boolean Validate(WhereExpression expression)

 

Shared Function Validate(expression As WhereExpression) As Boolean

Parameters:

  • expression:

WriteExpression    (declared in WhereExpression)

 

class method WriteExpression(node: JsonBaseObject; tag: String; value: WhereExpression)

 

static void WriteExpression(JsonBaseObject node, String tag, WhereExpression value)

 

Shared Sub WriteExpression(node As JsonBaseObject, tag As String, value As WhereExpression)

Parameters:

  • node:
  • tag:
  • value:

 

constructor

Creates a new instance of the MacroExpression class.

 

constructor

 

MacroExpression()

 

Sub New()

constructor (String)

Creates a new instance of the MacroExpression class and initializes its Name property.

 

constructor(name: String)

 

MacroExpression(String name)

 

Sub New(name As String)

Parameters:

  • name:

constructor (String, array of WhereExpression)

Creates a new instance of the MacroExpression class and initializes its Name property. The method also intializes a list of macro parameters.

 

constructor(name: String; params values: array of WhereExpression)

 

MacroExpression(String name, params WhereExpression[] values)

 

Sub New(name As String, ParamArray values As WhereExpression())

Parameters:

  • name:
  • values:

Add

Adds a provided WhereExpression instance to the list of macro parameter values.

 

method Add(value: WhereExpression)

 

void Add(WhereExpression value)

 

Sub Add(value As WhereExpression)

Parameters:

  • value: The macro parameter to be added.

ApplyFieldMapping (SchemaColumnMappingCollection)    (declared in WhereExpression)

Adjusts the field names in the WhereExpression in accordance with table names of fields in the given schema column mapping.

 

method ApplyFieldMapping(columnMappings: SchemaColumnMappingCollection)

 

void ApplyFieldMapping(SchemaColumnMappingCollection columnMappings)

 

Sub ApplyFieldMapping(columnMappings As SchemaColumnMappingCollection)

Parameters:

  • columnMappings:

ApplyFieldMapping (SchemaColumnMappingCollection)

 

method ApplyFieldMapping(mappings: SchemaColumnMappingCollection)

 

void ApplyFieldMapping(SchemaColumnMappingCollection mappings)

 

Sub ApplyFieldMapping(mappings As SchemaColumnMappingCollection)

Parameters:

  • mappings:

ApplySourceTableNumber

 

method ApplySourceTableNumber(number: Int32): WhereExpression

 

WhereExpression ApplySourceTableNumber(Int32 number)

 

Function ApplySourceTableNumber(number As Int32) As WhereExpression

Parameters:

  • number:

ApplyTableMapping

 

method ApplyTableMapping(schemaTable: String; databaseTable: String)

 

void ApplyTableMapping(String schemaTable, String databaseTable)

 

Sub ApplyTableMapping(schemaTable As String, databaseTable As String)

Parameters:

  • schemaTable:
  • databaseTable:

ApplyTableNameOrAlias

 

method ApplyTableNameOrAlias(name: String)

 

void ApplyTableNameOrAlias(String name)

 

Sub ApplyTableNameOrAlias(name As String)

Parameters:

  • name:

ExtractAllConstantExpression

 

method ExtractAllConstantExpression(expressions: List<ConstantExpression>)

 

void ExtractAllConstantExpression(List<ConstantExpression> expressions)

 

Sub ExtractAllConstantExpression(expressions As List<ConstantExpression>)

Parameters:

  • expressions:

ExtractAllFieldNames (List<String>)    (declared in WhereExpression)

Establishes a list of field names used in the WhereExpression.

 

method ExtractAllFieldNames(fieldNames: List<String>)

 

void ExtractAllFieldNames(List<String> fieldNames)

 

Sub ExtractAllFieldNames(fieldNames As List<String>)

Parameters:

  • fieldNames:

ExtractAllFieldNames (List<String>)

 

method ExtractAllFieldNames(fields: List<String>)

 

void ExtractAllFieldNames(List<String> fields)

 

Sub ExtractAllFieldNames(fields As List<String>)

Parameters:

  • fields:

ExtractAllParams

 

method ExtractAllParams(parameters: SchemaParameterCollection)

 

void ExtractAllParams(SchemaParameterCollection parameters)

 

Sub ExtractAllParams(parameters As SchemaParameterCollection)

Parameters:

  • parameters:

Insert

Inserts a provided WhereExpression instance to the list of macro parameter values at the Position position.

 

method Insert(index: Int32; value: WhereExpression)

 

void Insert(Int32 index, WhereExpression value)

 

Sub Insert(index As Int32, value As WhereExpression)

Parameters:

  • index:
  • value:

ReadFromJson

 

method ReadFromJson(node: JsonObject)

 

void ReadFromJson(JsonObject node)

 

Sub ReadFromJson(node As JsonObject)

Parameters:

  • node:

ReadFromXml

Deserializes the MacroExpression from the provided XmlNode.

 

method ReadFromXml(node: XmlNode)

 

void ReadFromXml(XmlNode node)

 

Sub ReadFromXml(node As XmlNode)

Parameters:

  • node:

Remove

Removes a provided WhereExpression instance from the macro parameters list.

 

method Remove(value: WhereExpression)

 

void Remove(WhereExpression value)

 

Sub Remove(value As WhereExpression)

Parameters:

  • value:

RemoveAt

Removes the macro parameter stored in the macro parameters list at the index position.

 

method RemoveAt(index: Int32)

 

void RemoveAt(Int32 index)

 

Sub RemoveAt(index As Int32)

Parameters:

  • index:

ToJsonString    (declared in WhereExpression)

 

method ToJsonString: String

 

String ToJsonString()

 

Function ToJsonString() As String

ToSQLString    (declared in WhereExpression)

A helper method that wraps the similar one with the string builder and returns a SQL string.

 

method ToSQLString: String

 

String ToSQLString()

 

Function ToSQLString() As String

ToSQLString (StringBuilder)

Converts the current MacroExpression instance to its SQL representation and adds the result of this conversion to the provided StringBuilder.

 

method ToSQLString(destination: StringBuilder)

 

void ToSQLString(StringBuilder destination)

 

Sub ToSQLString(destination As StringBuilder)

Parameters:

  • destination:

ToString    (declared in WhereExpression)

Returns a SQL string representation of the current expression.

 

method ToString: String

 

String ToString()

 

Function ToString() As String

ToXmlNode    (declared in WhereExpression)

Creates query node (in the Dynamic Where XML Format) from WhereExpression.

 

method ToXmlNode: XmlNode

 

XmlNode ToXmlNode()

 

Function ToXmlNode() As XmlNode

ToXmlString    (declared in WhereExpression)

Creates query node (in the Dynamic Where XML Format) from WhereExpression and returns it in the string format.

 

method ToXmlString: String

 

String ToXmlString()

 

Function ToXmlString() As String

Validate    (declared in WhereExpression)

 

method Validate: Boolean

 

Boolean Validate()

 

Function Validate() As Boolean

WriteToJson

 

method WriteToJson(node: JsonObject)

 

void WriteToJson(JsonObject node)

 

Sub WriteToJson(node As JsonObject)

Parameters:

  • node:

WriteToXml

Serializes the current MacroExpression instance to XML and stores the serialization result in the provided XmlNode.

 

method WriteToXml(node: XmlNode)

 

void WriteToXml(XmlNode node)

 

Sub WriteToXml(node As XmlNode)

Parameters:

  • node: