WhereExpression

Overview

The base abstract class for classes that represent WHERE expression tree nodes:

  • BinaryExpression combines two other expressions with a binary operator (such as equality or binary logical operators);
  • UnaryExpression represents expressions, based in the application of a unary operator (like the change of sign or logical negation) to another, inner expression;
  • BetweenExpression represents expression that checks belonging to a range of values;
  • ConstantExpression - the constant values that appear in an expression are represented through objects of this class;
  • ListExpression is a complex expression, represented by a list of expressions;
  • ParameterExpression - the parameters (variables) of an expression are represented through objects of this class;
  • FieldExpression represents the part of expression containing table field names;
  • NullExpression represents NULL values used in the expression;
  • MacroExpression represents a call to a macro function, which will be processed by Macro Processor.

This class is used to dynamically build WHERE statements from code (Dynamic Where feature of Data Abstract).

For example, a WHERE part of this query

SELECT * FROM Employees WHERE ((Position = 'Sales Manager') 
OR (Zip IS NULL)) AND (City IN ('Atlanta GA', 'Seattle WA', 'New York CA'))

will be presented as:

WhereExpression lResult;
lResult = new BinaryExpression(new BinaryExpression(
            new BinaryExpression(
              new FieldExpression("Position"),
              new ConstantExpression("Sales Manager", DataType.String),BinaryOperator.Equal),
              new BinaryExpression(
              new FieldExpression("Zip"),
              new NullExpression(),BinaryOperator.Equal),BinaryOperator.Or),

              new BinaryExpression(
                new FieldExpression("City"),
                new ListExpression(
                new WhereExpression[]{ new ConstantExpression("Atlanta GA",DataType.String),
                                   new ConstantExpression("Seattle WA", DataType.String),
                                   new ConstantExpression("New York CA", DataType.String) }),
             BinaryOperator.In),

           BinaryOperator.And);

Location


 

constructor  protected

Default parameterless constructor.
Required properties have to assigned in addition

 

constructor

 

WhereExpression()

 

Sub New()

ApplyFieldMapping

Adjusts the field names 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:

ApplySourceTableNumber

Adjusts the source table number

 

method ApplySourceTableNumber(number: Int32): WhereExpression

 

WhereExpression ApplySourceTableNumber(Int32 number)

 

Function ApplySourceTableNumber(number As Int32) As WhereExpression

Parameters:

  • number:

ApplyTableMapping

Adjusts the table names

 

method ApplyTableMapping(schemaTable: String; databaseTable: String)

 

void ApplyTableMapping(String schemaTable, String databaseTable)

 

Sub ApplyTableMapping(schemaTable As String, databaseTable As String)

Parameters:

  • schemaTable:
  • databaseTable:

ApplyTableNameOrAlias

Adjusts the table names

 

method ApplyTableNameOrAlias(name: String)

 

void ApplyTableNameOrAlias(String name)

 

Sub ApplyTableNameOrAlias(name As String)

Parameters:

  • name:

Creates new BinaryExpression from given left and right 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:

Creates new BinaryExpression from given left and right operands, using operator.

 

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:

DYN_WHERE_BETWEEN  protected

 

const DYN_WHERE_BETWEEN: String = 'between'

 

const String DYN_WHERE_BETWEEN = "between"

 

Const DYN_WHERE_BETWEEN As String = "between"

DYN_WHERE_BINARYOPERATION  protected

 

const DYN_WHERE_BINARYOPERATION: String = 'binaryoperation'

 

const String DYN_WHERE_BINARYOPERATION = "binaryoperation"

 

Const DYN_WHERE_BINARYOPERATION As String = "binaryoperation"

DYN_WHERE_CONSTANT  protected

 

const DYN_WHERE_CONSTANT: String = 'constant'

 

const String DYN_WHERE_CONSTANT = "constant"

 

Const DYN_WHERE_CONSTANT As String = "constant"

DYN_WHERE_DATATYPE  protected

 

const DYN_WHERE_DATATYPE: String = 'datatype'

 

const String DYN_WHERE_DATATYPE = "datatype"

 

Const DYN_WHERE_DATATYPE As String = "datatype"

DYN_WHERE_DATETIMENOW  protected

 

const DYN_WHERE_DATETIMENOW: String = 'datetimenow'

 

const String DYN_WHERE_DATETIMENOW = "datetimenow"

 

Const DYN_WHERE_DATETIMENOW As String = "datetimenow"

DYN_WHERE_DATETIMEPART  protected

 

const DYN_WHERE_DATETIMEPART: String = 'datetimepart'

 

const String DYN_WHERE_DATETIMEPART = "datetimepart"

 

Const DYN_WHERE_DATETIMEPART As String = "datetimepart"

DYN_WHERE_DATETIMETODAY  protected

 

const DYN_WHERE_DATETIMETODAY: String = 'datetimetoday'

 

const String DYN_WHERE_DATETIMETODAY = "datetimetoday"

 

Const DYN_WHERE_DATETIMETODAY As String = "datetimetoday"

DYN_WHERE_EXPRESSION  protected

 

const DYN_WHERE_EXPRESSION: String = 'expression'

 

const String DYN_WHERE_EXPRESSION = "expression"

 

Const DYN_WHERE_EXPRESSION As String = "expression"

DYN_WHERE_FIELD  protected

 

const DYN_WHERE_FIELD: String = 'field'

 

const String DYN_WHERE_FIELD = "field"

 

Const DYN_WHERE_FIELD As String = "field"

DYN_WHERE_FUNCTION  protected

 

const DYN_WHERE_FUNCTION: String = 'function'

 

const String DYN_WHERE_FUNCTION = "function"

 

Const DYN_WHERE_FUNCTION As String = "function"

DYN_WHERE_ITEMS  protected

 

const DYN_WHERE_ITEMS: String = 'items'

 

const String DYN_WHERE_ITEMS = "items"

 

Const DYN_WHERE_ITEMS As String = "items"

DYN_WHERE_KIND  protected

 

const DYN_WHERE_KIND: String = 'kind'

 

const String DYN_WHERE_KIND = "kind"

 

Const DYN_WHERE_KIND As String = "kind"

DYN_WHERE_LEFT  protected

 

const DYN_WHERE_LEFT: String = 'left'

 

const String DYN_WHERE_LEFT = "left"

 

Const DYN_WHERE_LEFT As String = "left"

DYN_WHERE_LIST  protected

 

const DYN_WHERE_LIST: String = 'list'

 

const String DYN_WHERE_LIST = "list"

 

Const DYN_WHERE_LIST As String = "list"

DYN_WHERE_LOWER  protected

 

const DYN_WHERE_LOWER: String = 'lower'

 

const String DYN_WHERE_LOWER = "lower"

 

Const DYN_WHERE_LOWER As String = "lower"

DYN_WHERE_MACRO  protected

 

const DYN_WHERE_MACRO: String = 'macro'

 

const String DYN_WHERE_MACRO = "macro"

 

Const DYN_WHERE_MACRO As String = "macro"

DYN_WHERE_NAME  protected

 

const DYN_WHERE_NAME: String = 'name'

 

const String DYN_WHERE_NAME = "name"

 

Const DYN_WHERE_NAME As String = "name"

DYN_WHERE_NULL  protected

 

const DYN_WHERE_NULL: String = 'null'

 

const String DYN_WHERE_NULL = "null"

 

Const DYN_WHERE_NULL As String = "null"

DYN_WHERE_OPERATOR  protected

 

const DYN_WHERE_OPERATOR: String = 'operator'

 

const String DYN_WHERE_OPERATOR = "operator"

 

Const DYN_WHERE_OPERATOR As String = "operator"

DYN_WHERE_PARAMETER  protected

 

const DYN_WHERE_PARAMETER: String = 'parameter'

 

const String DYN_WHERE_PARAMETER = "parameter"

 

Const DYN_WHERE_PARAMETER As String = "parameter"

DYN_WHERE_PART  protected

 

const DYN_WHERE_PART: String = 'part'

 

const String DYN_WHERE_PART = "part"

 

Const DYN_WHERE_PART As String = "part"

DYN_WHERE_RIGHT  protected

 

const DYN_WHERE_RIGHT: String = 'right'

 

const String DYN_WHERE_RIGHT = "right"

 

Const DYN_WHERE_RIGHT As String = "right"

DYN_WHERE_SIZE  protected

 

const DYN_WHERE_SIZE: String = 'size'

 

const String DYN_WHERE_SIZE = "size"

 

Const DYN_WHERE_SIZE As String = "size"

DYN_WHERE_TABLE  protected

 

const DYN_WHERE_TABLE: String = 'table'

 

const String DYN_WHERE_TABLE = "table"

 

Const DYN_WHERE_TABLE As String = "table"

DYN_WHERE_TYPE  protected

 

const DYN_WHERE_TYPE: String = 'type'

 

const String DYN_WHERE_TYPE = "type"

 

Const DYN_WHERE_TYPE As String = "type"

DYN_WHERE_TYPE_VALUE  protected

 

const DYN_WHERE_TYPE_VALUE: String = 'query.where'

 

const String DYN_WHERE_TYPE_VALUE = "query.where"

 

Const DYN_WHERE_TYPE_VALUE As String = "query.where"

DYN_WHERE_UNARYOPERATION  protected

 

const DYN_WHERE_UNARYOPERATION: String = 'unaryoperation'

 

const String DYN_WHERE_UNARYOPERATION = "unaryoperation"

 

Const DYN_WHERE_UNARYOPERATION As String = "unaryoperation"

DYN_WHERE_UPPER  protected

 

const DYN_WHERE_UPPER: String = 'upper'

 

const String DYN_WHERE_UPPER = "upper"

 

Const DYN_WHERE_UPPER As String = "upper"

DYN_WHERE_VALUE  protected

 

const DYN_WHERE_VALUE: String = 'value'

 

const String DYN_WHERE_VALUE = "value"

 

Const DYN_WHERE_VALUE As String = "value"

ExtractAllConstantExpression

Establishes a list of all ConstantExpression contained in the expression.

 

method ExtractAllConstantExpression(expressions: List<ConstantExpression>)

 

void ExtractAllConstantExpression(List<ConstantExpression> expressions)

 

Sub ExtractAllConstantExpression(expressions As List<ConstantExpression>)

Parameters:

  • expressions:

ExtractAllFieldNames

Establishes a list of field names used in the expression.

 

method ExtractAllFieldNames(fieldNames: List<String>)

 

void ExtractAllFieldNames(List<String> fieldNames)

 

Sub ExtractAllFieldNames(fieldNames As List<String>)

Parameters:

  • fieldNames:

ExtractAllParams

Fills SchemaParameterCollection with ParameterExpressions and ConstantExpressions (as ParameterExpressions) contained in the expression.

 

method ExtractAllParams(parameters: SchemaParameterCollection)

 

void ExtractAllParams(SchemaParameterCollection parameters)

 

Sub ExtractAllParams(parameters As SchemaParameterCollection)

Parameters:

  • parameters:

FromJsonObject

Creates expression from the given Json object, that should be in the correct Dynamic Where JSON Format.

 

class method FromJsonObject(node: JsonObject): WhereExpression

 

static WhereExpression FromJsonObject(JsonObject node)

 

Shared Function FromJsonObject(node As JsonObject) As WhereExpression

Parameters:

  • node: json object

FromJsonString

Creates expression from the given string, that should be in the correct Dynamic Where JSON Format.

 

class method FromJsonString(json: String): WhereExpression

 

static WhereExpression FromJsonString(String json)

 

Shared Function FromJsonString(json As String) As WhereExpression

Parameters:

  • json: string in Json format

FromString

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: string in XML or Json format

FromStringToSql

 

class method FromStringToSql(xml: String): String

 

static String FromStringToSql(String xml)

 

Shared Function FromStringToSql(xml As String) As String

Parameters:

  • xml:

FromXmlNode

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: XML node

FromXmlString

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

 

class method FromXmlString(xml: String): WhereExpression

 

static WhereExpression FromXmlString(String xml)

 

Shared Function FromXmlString(xml As String) As WhereExpression

Parameters:

  • xml: XML string

Kind

Represents the type of WHERE expression.

 

property Kind: WhereKind read;

 

WhereKind Kind { get; }

 

ReadOnly Property Kind() As WhereKind

ParseExpression (JsonBaseObject): WhereExpression

Creates new Where expression from Json object.

 

class method ParseExpression(node: JsonBaseObject): WhereExpression

 

static WhereExpression ParseExpression(JsonBaseObject node)

 

Shared Function ParseExpression(node As JsonBaseObject) As WhereExpression

Parameters:

  • node: Json object

ParseExpression (XmlNode): WhereExpression

Creates new Where expression from XML node.

 

class method ParseExpression(node: XmlNode): WhereExpression

 

static WhereExpression ParseExpression(XmlNode node)

 

Shared Function ParseExpression(node As XmlNode) As WhereExpression

Parameters:

  • node: XML node

ReadFromJson

Creates expression from the given Json object, that should be in the correct Dynamic Where JSON Format.

 

method ReadFromJson(node: JsonObject)

 

void ReadFromJson(JsonObject node)

 

Sub ReadFromJson(node As JsonObject)

Parameters:

  • node: Json object

ReadFromXml

Creates expression from the given xml node, that should be in the correct Dynamic Where XML Format.

 

method ReadFromXml(node: XmlNode)

 

void ReadFromXml(XmlNode node)

 

Sub ReadFromXml(node As XmlNode)

Parameters:

  • node: XML node

ToJsonString

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

 

method ToJsonString: String

 

String ToJsonString()

 

Function ToJsonString() As String

ToSQLString

Creates an SQL representation of the current where expression instance

 

method ToSQLString: String

 

String ToSQLString()

 

Function ToSQLString() As String

ToSQLString (StringBuilder)

Creates an SQL representation of the current where expression instance and appends it to the provided StringBuilder.

 

method ToSQLString(destination: StringBuilder)

 

void ToSQLString(StringBuilder destination)

 

Sub ToSQLString(destination As StringBuilder)

Parameters:

  • destination: The destination string builder to be appended.

ToString

Returns a SQL string representation of the current expression.

 

method ToString: String

 

String ToString()

 

Function ToString() As String

ToXmlNode

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

 

method ToXmlNode: XmlNode

 

XmlNode ToXmlNode()

 

Function ToXmlNode() As XmlNode

ToXmlString

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

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

 

method Validate: Boolean

 

Boolean Validate()

 

Function Validate() As Boolean

Validate (WhereExpression): Boolean

Validates that expression doesn't contain any errors, using WhereValidator. The main purpose of this validation - to scan all objects of expession 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: Expression

WriteExpression

Writes expression to Json object

 

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

Writes Json object from expression.

 

method WriteToJson(node: JsonObject)

 

void WriteToJson(JsonObject node)

 

Sub WriteToJson(node As JsonObject)

Parameters:

  • node: Json object

WriteToXml

Writes xml node from expression.

 

method WriteToXml(node: XmlNode)

 

void WriteToXml(XmlNode node)

 

Sub WriteToXml(node As XmlNode)

Parameters:

  • node: XML node

 

DYN_WHERE_BETWEEN  protected

 

const DYN_WHERE_BETWEEN: String = 'between'

 

const String DYN_WHERE_BETWEEN = "between"

 

Const DYN_WHERE_BETWEEN As String = "between"

DYN_WHERE_BINARYOPERATION  protected

 

const DYN_WHERE_BINARYOPERATION: String = 'binaryoperation'

 

const String DYN_WHERE_BINARYOPERATION = "binaryoperation"

 

Const DYN_WHERE_BINARYOPERATION As String = "binaryoperation"

DYN_WHERE_CONSTANT  protected

 

const DYN_WHERE_CONSTANT: String = 'constant'

 

const String DYN_WHERE_CONSTANT = "constant"

 

Const DYN_WHERE_CONSTANT As String = "constant"

DYN_WHERE_DATATYPE  protected

 

const DYN_WHERE_DATATYPE: String = 'datatype'

 

const String DYN_WHERE_DATATYPE = "datatype"

 

Const DYN_WHERE_DATATYPE As String = "datatype"

DYN_WHERE_DATETIMENOW  protected

 

const DYN_WHERE_DATETIMENOW: String = 'datetimenow'

 

const String DYN_WHERE_DATETIMENOW = "datetimenow"

 

Const DYN_WHERE_DATETIMENOW As String = "datetimenow"

DYN_WHERE_DATETIMEPART  protected

 

const DYN_WHERE_DATETIMEPART: String = 'datetimepart'

 

const String DYN_WHERE_DATETIMEPART = "datetimepart"

 

Const DYN_WHERE_DATETIMEPART As String = "datetimepart"

DYN_WHERE_DATETIMETODAY  protected

 

const DYN_WHERE_DATETIMETODAY: String = 'datetimetoday'

 

const String DYN_WHERE_DATETIMETODAY = "datetimetoday"

 

Const DYN_WHERE_DATETIMETODAY As String = "datetimetoday"

DYN_WHERE_EXPRESSION  protected

 

const DYN_WHERE_EXPRESSION: String = 'expression'

 

const String DYN_WHERE_EXPRESSION = "expression"

 

Const DYN_WHERE_EXPRESSION As String = "expression"

DYN_WHERE_FIELD  protected

 

const DYN_WHERE_FIELD: String = 'field'

 

const String DYN_WHERE_FIELD = "field"

 

Const DYN_WHERE_FIELD As String = "field"

DYN_WHERE_FUNCTION  protected

 

const DYN_WHERE_FUNCTION: String = 'function'

 

const String DYN_WHERE_FUNCTION = "function"

 

Const DYN_WHERE_FUNCTION As String = "function"

DYN_WHERE_ITEMS  protected

 

const DYN_WHERE_ITEMS: String = 'items'

 

const String DYN_WHERE_ITEMS = "items"

 

Const DYN_WHERE_ITEMS As String = "items"

DYN_WHERE_KIND  protected

 

const DYN_WHERE_KIND: String = 'kind'

 

const String DYN_WHERE_KIND = "kind"

 

Const DYN_WHERE_KIND As String = "kind"

DYN_WHERE_LEFT  protected

 

const DYN_WHERE_LEFT: String = 'left'

 

const String DYN_WHERE_LEFT = "left"

 

Const DYN_WHERE_LEFT As String = "left"

DYN_WHERE_LIST  protected

 

const DYN_WHERE_LIST: String = 'list'

 

const String DYN_WHERE_LIST = "list"

 

Const DYN_WHERE_LIST As String = "list"

DYN_WHERE_LOWER  protected

 

const DYN_WHERE_LOWER: String = 'lower'

 

const String DYN_WHERE_LOWER = "lower"

 

Const DYN_WHERE_LOWER As String = "lower"

DYN_WHERE_MACRO  protected

 

const DYN_WHERE_MACRO: String = 'macro'

 

const String DYN_WHERE_MACRO = "macro"

 

Const DYN_WHERE_MACRO As String = "macro"

DYN_WHERE_NAME  protected

 

const DYN_WHERE_NAME: String = 'name'

 

const String DYN_WHERE_NAME = "name"

 

Const DYN_WHERE_NAME As String = "name"

DYN_WHERE_NULL  protected

 

const DYN_WHERE_NULL: String = 'null'

 

const String DYN_WHERE_NULL = "null"

 

Const DYN_WHERE_NULL As String = "null"

DYN_WHERE_OPERATOR  protected

 

const DYN_WHERE_OPERATOR: String = 'operator'

 

const String DYN_WHERE_OPERATOR = "operator"

 

Const DYN_WHERE_OPERATOR As String = "operator"

DYN_WHERE_PARAMETER  protected

 

const DYN_WHERE_PARAMETER: String = 'parameter'

 

const String DYN_WHERE_PARAMETER = "parameter"

 

Const DYN_WHERE_PARAMETER As String = "parameter"

DYN_WHERE_PART  protected

 

const DYN_WHERE_PART: String = 'part'

 

const String DYN_WHERE_PART = "part"

 

Const DYN_WHERE_PART As String = "part"

DYN_WHERE_RIGHT  protected

 

const DYN_WHERE_RIGHT: String = 'right'

 

const String DYN_WHERE_RIGHT = "right"

 

Const DYN_WHERE_RIGHT As String = "right"

DYN_WHERE_SIZE  protected

 

const DYN_WHERE_SIZE: String = 'size'

 

const String DYN_WHERE_SIZE = "size"

 

Const DYN_WHERE_SIZE As String = "size"

DYN_WHERE_TABLE  protected

 

const DYN_WHERE_TABLE: String = 'table'

 

const String DYN_WHERE_TABLE = "table"

 

Const DYN_WHERE_TABLE As String = "table"

DYN_WHERE_TYPE  protected

 

const DYN_WHERE_TYPE: String = 'type'

 

const String DYN_WHERE_TYPE = "type"

 

Const DYN_WHERE_TYPE As String = "type"

DYN_WHERE_TYPE_VALUE  protected

 

const DYN_WHERE_TYPE_VALUE: String = 'query.where'

 

const String DYN_WHERE_TYPE_VALUE = "query.where"

 

Const DYN_WHERE_TYPE_VALUE As String = "query.where"

DYN_WHERE_UNARYOPERATION  protected

 

const DYN_WHERE_UNARYOPERATION: String = 'unaryoperation'

 

const String DYN_WHERE_UNARYOPERATION = "unaryoperation"

 

Const DYN_WHERE_UNARYOPERATION As String = "unaryoperation"

DYN_WHERE_UPPER  protected

 

const DYN_WHERE_UPPER: String = 'upper'

 

const String DYN_WHERE_UPPER = "upper"

 

Const DYN_WHERE_UPPER As String = "upper"

DYN_WHERE_VALUE  protected

 

const DYN_WHERE_VALUE: String = 'value'

 

const String DYN_WHERE_VALUE = "value"

 

Const DYN_WHERE_VALUE As String = "value"

 

Kind

Represents the type of WHERE expression.

 

property Kind: WhereKind read;

 

WhereKind Kind { get; }

 

ReadOnly Property Kind() As WhereKind

 

Creates new BinaryExpression from given left and right 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:

Creates new BinaryExpression from given left and right operands, using operator.

 

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

Creates expression from the given Json object, that should be in the correct Dynamic Where JSON Format.

 

class method FromJsonObject(node: JsonObject): WhereExpression

 

static WhereExpression FromJsonObject(JsonObject node)

 

Shared Function FromJsonObject(node As JsonObject) As WhereExpression

Parameters:

  • node: json object

FromJsonString

Creates expression from the given string, that should be in the correct Dynamic Where JSON Format.

 

class method FromJsonString(json: String): WhereExpression

 

static WhereExpression FromJsonString(String json)

 

Shared Function FromJsonString(json As String) As WhereExpression

Parameters:

  • json: string in Json format

FromString

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: string in XML or Json format

FromStringToSql

 

class method FromStringToSql(xml: String): String

 

static String FromStringToSql(String xml)

 

Shared Function FromStringToSql(xml As String) As String

Parameters:

  • xml:

FromXmlNode

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: XML node

FromXmlString

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

 

class method FromXmlString(xml: String): WhereExpression

 

static WhereExpression FromXmlString(String xml)

 

Shared Function FromXmlString(xml As String) As WhereExpression

Parameters:

  • xml: XML string

ParseExpression (JsonBaseObject): WhereExpression

Creates new Where expression from Json object.

 

class method ParseExpression(node: JsonBaseObject): WhereExpression

 

static WhereExpression ParseExpression(JsonBaseObject node)

 

Shared Function ParseExpression(node As JsonBaseObject) As WhereExpression

Parameters:

  • node: Json object

ParseExpression (XmlNode): WhereExpression

Creates new Where expression from XML node.

 

class method ParseExpression(node: XmlNode): WhereExpression

 

static WhereExpression ParseExpression(XmlNode node)

 

Shared Function ParseExpression(node As XmlNode) As WhereExpression

Parameters:

  • node: XML node

Validate (WhereExpression): Boolean

Validates that expression doesn't contain any errors, using WhereValidator. The main purpose of this validation - to scan all objects of expession 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: Expression

WriteExpression

Writes expression to Json object

 

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  protected

Default parameterless constructor.
Required properties have to assigned in addition

 

constructor

 

WhereExpression()

 

Sub New()

ApplyFieldMapping

Adjusts the field names 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:

ApplySourceTableNumber

Adjusts the source table number

 

method ApplySourceTableNumber(number: Int32): WhereExpression

 

WhereExpression ApplySourceTableNumber(Int32 number)

 

Function ApplySourceTableNumber(number As Int32) As WhereExpression

Parameters:

  • number:

ApplyTableMapping

Adjusts the table names

 

method ApplyTableMapping(schemaTable: String; databaseTable: String)

 

void ApplyTableMapping(String schemaTable, String databaseTable)

 

Sub ApplyTableMapping(schemaTable As String, databaseTable As String)

Parameters:

  • schemaTable:
  • databaseTable:

ApplyTableNameOrAlias

Adjusts the table names

 

method ApplyTableNameOrAlias(name: String)

 

void ApplyTableNameOrAlias(String name)

 

Sub ApplyTableNameOrAlias(name As String)

Parameters:

  • name:

ExtractAllConstantExpression

Establishes a list of all ConstantExpression contained in the expression.

 

method ExtractAllConstantExpression(expressions: List<ConstantExpression>)

 

void ExtractAllConstantExpression(List<ConstantExpression> expressions)

 

Sub ExtractAllConstantExpression(expressions As List<ConstantExpression>)

Parameters:

  • expressions:

ExtractAllFieldNames

Establishes a list of field names used in the expression.

 

method ExtractAllFieldNames(fieldNames: List<String>)

 

void ExtractAllFieldNames(List<String> fieldNames)

 

Sub ExtractAllFieldNames(fieldNames As List<String>)

Parameters:

  • fieldNames:

ExtractAllParams

Fills SchemaParameterCollection with ParameterExpressions and ConstantExpressions (as ParameterExpressions) contained in the expression.

 

method ExtractAllParams(parameters: SchemaParameterCollection)

 

void ExtractAllParams(SchemaParameterCollection parameters)

 

Sub ExtractAllParams(parameters As SchemaParameterCollection)

Parameters:

  • parameters:

ReadFromJson

Creates expression from the given Json object, that should be in the correct Dynamic Where JSON Format.

 

method ReadFromJson(node: JsonObject)

 

void ReadFromJson(JsonObject node)

 

Sub ReadFromJson(node As JsonObject)

Parameters:

  • node: Json object

ReadFromXml

Creates expression from the given xml node, that should be in the correct Dynamic Where XML Format.

 

method ReadFromXml(node: XmlNode)

 

void ReadFromXml(XmlNode node)

 

Sub ReadFromXml(node As XmlNode)

Parameters:

  • node: XML node

ToJsonString

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

 

method ToJsonString: String

 

String ToJsonString()

 

Function ToJsonString() As String

ToSQLString

Creates an SQL representation of the current where expression instance

 

method ToSQLString: String

 

String ToSQLString()

 

Function ToSQLString() As String

ToSQLString (StringBuilder)

Creates an SQL representation of the current where expression instance and appends it to the provided StringBuilder.

 

method ToSQLString(destination: StringBuilder)

 

void ToSQLString(StringBuilder destination)

 

Sub ToSQLString(destination As StringBuilder)

Parameters:

  • destination: The destination string builder to be appended.

ToString

Returns a SQL string representation of the current expression.

 

method ToString: String

 

String ToString()

 

Function ToString() As String

ToXmlNode

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

 

method ToXmlNode: XmlNode

 

XmlNode ToXmlNode()

 

Function ToXmlNode() As XmlNode

ToXmlString

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

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

 

method Validate: Boolean

 

Boolean Validate()

 

Function Validate() As Boolean

WriteToJson

Writes Json object from expression.

 

method WriteToJson(node: JsonObject)

 

void WriteToJson(JsonObject node)

 

Sub WriteToJson(node As JsonObject)

Parameters:

  • node: Json object

WriteToXml

Writes xml node from expression.

 

method WriteToXml(node: XmlNode)

 

void WriteToXml(XmlNode node)

 

Sub WriteToXml(node As XmlNode)

Parameters:

  • node: XML node