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
- Reference: RemObjects.DataAbstract.dll
- Namespace: RemObjects.DataAbstract.Expressions
constructor protected
constructor
WhereExpression()
Sub New()
ApplyFieldMapping
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:
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:
Combine (WhereExpression, WhereExpression): WhereExpression
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:
Combine (WhereExpression, WhereExpression, BinaryOperator): WhereExpression
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"
Dim DYN_WHERE_BETWEEN As String = "between"
DYN_WHERE_BINARYOPERATION protected
const DYN_WHERE_BINARYOPERATION: String = "binaryoperation";
const String DYN_WHERE_BINARYOPERATION = "binaryoperation"
Dim DYN_WHERE_BINARYOPERATION As String = "binaryoperation"
DYN_WHERE_CONSTANT protected
const DYN_WHERE_CONSTANT: String = "constant";
const String DYN_WHERE_CONSTANT = "constant"
Dim DYN_WHERE_CONSTANT As String = "constant"
DYN_WHERE_DATATYPE protected
const DYN_WHERE_DATATYPE: String = "datatype";
const String DYN_WHERE_DATATYPE = "datatype"
Dim DYN_WHERE_DATATYPE As String = "datatype"
DYN_WHERE_DATETIMENOW protected
const DYN_WHERE_DATETIMENOW: String = "datetimenow";
const String DYN_WHERE_DATETIMENOW = "datetimenow"
Dim DYN_WHERE_DATETIMENOW As String = "datetimenow"
DYN_WHERE_DATETIMEPART protected
const DYN_WHERE_DATETIMEPART: String = "datetimepart";
const String DYN_WHERE_DATETIMEPART = "datetimepart"
Dim DYN_WHERE_DATETIMEPART As String = "datetimepart"
DYN_WHERE_DATETIMETODAY protected
const DYN_WHERE_DATETIMETODAY: String = "datetimetoday";
const String DYN_WHERE_DATETIMETODAY = "datetimetoday"
Dim DYN_WHERE_DATETIMETODAY As String = "datetimetoday"
DYN_WHERE_EXPRESSION protected
const DYN_WHERE_EXPRESSION: String = "expression";
const String DYN_WHERE_EXPRESSION = "expression"
Dim DYN_WHERE_EXPRESSION As String = "expression"
DYN_WHERE_FIELD protected
const DYN_WHERE_FIELD: String = "field";
const String DYN_WHERE_FIELD = "field"
Dim DYN_WHERE_FIELD As String = "field"
DYN_WHERE_FUNCTION protected
const DYN_WHERE_FUNCTION: String = "function";
const String DYN_WHERE_FUNCTION = "function"
Dim DYN_WHERE_FUNCTION As String = "function"
DYN_WHERE_ITEMS protected
const DYN_WHERE_ITEMS: String = "items";
const String DYN_WHERE_ITEMS = "items"
Dim DYN_WHERE_ITEMS As String = "items"
DYN_WHERE_KIND protected
const DYN_WHERE_KIND: String = "kind";
const String DYN_WHERE_KIND = "kind"
Dim DYN_WHERE_KIND As String = "kind"
DYN_WHERE_LEFT protected
const DYN_WHERE_LEFT: String = "left";
const String DYN_WHERE_LEFT = "left"
Dim DYN_WHERE_LEFT As String = "left"
DYN_WHERE_LIST protected
const DYN_WHERE_LIST: String = "list";
const String DYN_WHERE_LIST = "list"
Dim DYN_WHERE_LIST As String = "list"
DYN_WHERE_LOWER protected
const DYN_WHERE_LOWER: String = "lower";
const String DYN_WHERE_LOWER = "lower"
Dim DYN_WHERE_LOWER As String = "lower"
DYN_WHERE_MACRO protected
const DYN_WHERE_MACRO: String = "macro";
const String DYN_WHERE_MACRO = "macro"
Dim DYN_WHERE_MACRO As String = "macro"
DYN_WHERE_NAME protected
const DYN_WHERE_NAME: String = "name";
const String DYN_WHERE_NAME = "name"
Dim DYN_WHERE_NAME As String = "name"
DYN_WHERE_NULL protected
const DYN_WHERE_NULL: String = "null";
const String DYN_WHERE_NULL = "null"
Dim DYN_WHERE_NULL As String = "null"
DYN_WHERE_OPERATOR protected
const DYN_WHERE_OPERATOR: String = "operator";
const String DYN_WHERE_OPERATOR = "operator"
Dim DYN_WHERE_OPERATOR As String = "operator"
DYN_WHERE_PARAMETER protected
const DYN_WHERE_PARAMETER: String = "parameter";
const String DYN_WHERE_PARAMETER = "parameter"
Dim DYN_WHERE_PARAMETER As String = "parameter"
DYN_WHERE_PART protected
const DYN_WHERE_PART: String = "part";
const String DYN_WHERE_PART = "part"
Dim DYN_WHERE_PART As String = "part"
DYN_WHERE_RIGHT protected
const DYN_WHERE_RIGHT: String = "right";
const String DYN_WHERE_RIGHT = "right"
Dim DYN_WHERE_RIGHT As String = "right"
DYN_WHERE_SIZE protected
const DYN_WHERE_SIZE: String = "size";
const String DYN_WHERE_SIZE = "size"
Dim DYN_WHERE_SIZE As String = "size"
DYN_WHERE_TABLE protected
const DYN_WHERE_TABLE: String = "table";
const String DYN_WHERE_TABLE = "table"
Dim DYN_WHERE_TABLE As String = "table"
DYN_WHERE_TYPE protected
const DYN_WHERE_TYPE: String = "type";
const String DYN_WHERE_TYPE = "type"
Dim 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"
Dim DYN_WHERE_TYPE_VALUE As String = "query.where"
DYN_WHERE_UNARYOPERATION protected
const DYN_WHERE_UNARYOPERATION: String = "unaryoperation";
const String DYN_WHERE_UNARYOPERATION = "unaryoperation"
Dim DYN_WHERE_UNARYOPERATION As String = "unaryoperation"
DYN_WHERE_UPPER protected
const DYN_WHERE_UPPER: String = "upper";
const String DYN_WHERE_UPPER = "upper"
Dim DYN_WHERE_UPPER As String = "upper"
DYN_WHERE_VALUE protected
const DYN_WHERE_VALUE: String = "value";
const String DYN_WHERE_VALUE = "value"
Dim DYN_WHERE_VALUE As String = "value"
ExtractAllConstantExpression
Establishes a list of all ConstantExpression contained in the WhereExpression.
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 WhereExpression.
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 WhereExpression.
method ExtractAllParams(parameters: SchemaParameterCollection)
void ExtractAllParams(SchemaParameterCollection parameters)
Sub ExtractAllParams(parameters As SchemaParameterCollection)
Parameters:
- parameters:
FromJsonObject
class method FromJsonObject(node: JsonObject): WhereExpression
static WhereExpression FromJsonObject(JsonObject node)
Shared Function FromJsonObject(node As JsonObject) As WhereExpression
Parameters:
- node:
FromJsonString
class method FromJsonString(json: String): WhereExpression
static WhereExpression FromJsonString(String json)
Shared Function FromJsonString(json As String) As WhereExpression
Parameters:
- json:
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:
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:
FromXmlString
class method FromXmlString(xml: String): WhereExpression
static WhereExpression FromXmlString(String xml)
Shared Function FromXmlString(xml As String) As WhereExpression
Parameters:
- xml:
Kind
Abstract readonly property, which represents the type of WHERE expression in the descendant class.
ParseExpression (JsonBaseObject): 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
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
Abstract method. In descendants creates WhereExpression 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:
ToJsonString
method ToJsonString: String
String ToJsonString()
Function ToJsonString() As String
ToSQLString
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)
Creates an SQL representation of thу 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
method Validate: Boolean
Boolean Validate()
Function Validate() As Boolean
Validate (WhereExpression): Boolean
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
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
Abstract method. In descendants creates where node (in the Dynamic Where XML Format) from WhereExpression.
method WriteToXml(node: XmlNode)
void WriteToXml(XmlNode node)
Sub WriteToXml(node As XmlNode)
Parameters:
- node:
DYN_WHERE_BETWEEN protected
const DYN_WHERE_BETWEEN: String = "between";
const String DYN_WHERE_BETWEEN = "between"
Dim DYN_WHERE_BETWEEN As String = "between"
DYN_WHERE_BINARYOPERATION protected
const DYN_WHERE_BINARYOPERATION: String = "binaryoperation";
const String DYN_WHERE_BINARYOPERATION = "binaryoperation"
Dim DYN_WHERE_BINARYOPERATION As String = "binaryoperation"
DYN_WHERE_CONSTANT protected
const DYN_WHERE_CONSTANT: String = "constant";
const String DYN_WHERE_CONSTANT = "constant"
Dim DYN_WHERE_CONSTANT As String = "constant"
DYN_WHERE_DATATYPE protected
const DYN_WHERE_DATATYPE: String = "datatype";
const String DYN_WHERE_DATATYPE = "datatype"
Dim DYN_WHERE_DATATYPE As String = "datatype"
DYN_WHERE_DATETIMENOW protected
const DYN_WHERE_DATETIMENOW: String = "datetimenow";
const String DYN_WHERE_DATETIMENOW = "datetimenow"
Dim DYN_WHERE_DATETIMENOW As String = "datetimenow"
DYN_WHERE_DATETIMEPART protected
const DYN_WHERE_DATETIMEPART: String = "datetimepart";
const String DYN_WHERE_DATETIMEPART = "datetimepart"
Dim DYN_WHERE_DATETIMEPART As String = "datetimepart"
DYN_WHERE_DATETIMETODAY protected
const DYN_WHERE_DATETIMETODAY: String = "datetimetoday";
const String DYN_WHERE_DATETIMETODAY = "datetimetoday"
Dim DYN_WHERE_DATETIMETODAY As String = "datetimetoday"
DYN_WHERE_EXPRESSION protected
const DYN_WHERE_EXPRESSION: String = "expression";
const String DYN_WHERE_EXPRESSION = "expression"
Dim DYN_WHERE_EXPRESSION As String = "expression"
DYN_WHERE_FIELD protected
const DYN_WHERE_FIELD: String = "field";
const String DYN_WHERE_FIELD = "field"
Dim DYN_WHERE_FIELD As String = "field"
DYN_WHERE_FUNCTION protected
const DYN_WHERE_FUNCTION: String = "function";
const String DYN_WHERE_FUNCTION = "function"
Dim DYN_WHERE_FUNCTION As String = "function"
DYN_WHERE_ITEMS protected
const DYN_WHERE_ITEMS: String = "items";
const String DYN_WHERE_ITEMS = "items"
Dim DYN_WHERE_ITEMS As String = "items"
DYN_WHERE_KIND protected
const DYN_WHERE_KIND: String = "kind";
const String DYN_WHERE_KIND = "kind"
Dim DYN_WHERE_KIND As String = "kind"
DYN_WHERE_LEFT protected
const DYN_WHERE_LEFT: String = "left";
const String DYN_WHERE_LEFT = "left"
Dim DYN_WHERE_LEFT As String = "left"
DYN_WHERE_LIST protected
const DYN_WHERE_LIST: String = "list";
const String DYN_WHERE_LIST = "list"
Dim DYN_WHERE_LIST As String = "list"
DYN_WHERE_LOWER protected
const DYN_WHERE_LOWER: String = "lower";
const String DYN_WHERE_LOWER = "lower"
Dim DYN_WHERE_LOWER As String = "lower"
DYN_WHERE_MACRO protected
const DYN_WHERE_MACRO: String = "macro";
const String DYN_WHERE_MACRO = "macro"
Dim DYN_WHERE_MACRO As String = "macro"
DYN_WHERE_NAME protected
const DYN_WHERE_NAME: String = "name";
const String DYN_WHERE_NAME = "name"
Dim DYN_WHERE_NAME As String = "name"
DYN_WHERE_NULL protected
const DYN_WHERE_NULL: String = "null";
const String DYN_WHERE_NULL = "null"
Dim DYN_WHERE_NULL As String = "null"
DYN_WHERE_OPERATOR protected
const DYN_WHERE_OPERATOR: String = "operator";
const String DYN_WHERE_OPERATOR = "operator"
Dim DYN_WHERE_OPERATOR As String = "operator"
DYN_WHERE_PARAMETER protected
const DYN_WHERE_PARAMETER: String = "parameter";
const String DYN_WHERE_PARAMETER = "parameter"
Dim DYN_WHERE_PARAMETER As String = "parameter"
DYN_WHERE_PART protected
const DYN_WHERE_PART: String = "part";
const String DYN_WHERE_PART = "part"
Dim DYN_WHERE_PART As String = "part"
DYN_WHERE_RIGHT protected
const DYN_WHERE_RIGHT: String = "right";
const String DYN_WHERE_RIGHT = "right"
Dim DYN_WHERE_RIGHT As String = "right"
DYN_WHERE_SIZE protected
const DYN_WHERE_SIZE: String = "size";
const String DYN_WHERE_SIZE = "size"
Dim DYN_WHERE_SIZE As String = "size"
DYN_WHERE_TABLE protected
const DYN_WHERE_TABLE: String = "table";
const String DYN_WHERE_TABLE = "table"
Dim DYN_WHERE_TABLE As String = "table"
DYN_WHERE_TYPE protected
const DYN_WHERE_TYPE: String = "type";
const String DYN_WHERE_TYPE = "type"
Dim 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"
Dim DYN_WHERE_TYPE_VALUE As String = "query.where"
DYN_WHERE_UNARYOPERATION protected
const DYN_WHERE_UNARYOPERATION: String = "unaryoperation";
const String DYN_WHERE_UNARYOPERATION = "unaryoperation"
Dim DYN_WHERE_UNARYOPERATION As String = "unaryoperation"
DYN_WHERE_UPPER protected
const DYN_WHERE_UPPER: String = "upper";
const String DYN_WHERE_UPPER = "upper"
Dim DYN_WHERE_UPPER As String = "upper"
DYN_WHERE_VALUE protected
const DYN_WHERE_VALUE: String = "value";
const String DYN_WHERE_VALUE = "value"
Dim DYN_WHERE_VALUE As String = "value"
Kind
Abstract readonly property, which represents the type of WHERE expression in the descendant class.
Combine (WhereExpression, WhereExpression): WhereExpression
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:
Combine (WhereExpression, WhereExpression, BinaryOperator): WhereExpression
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
class method FromJsonObject(node: JsonObject): WhereExpression
static WhereExpression FromJsonObject(JsonObject node)
Shared Function FromJsonObject(node As JsonObject) As WhereExpression
Parameters:
- node:
FromJsonString
class method FromJsonString(json: String): WhereExpression
static WhereExpression FromJsonString(String json)
Shared Function FromJsonString(json As String) As WhereExpression
Parameters:
- json:
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:
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:
FromXmlString
class method FromXmlString(xml: String): WhereExpression
static WhereExpression FromXmlString(String xml)
Shared Function FromXmlString(xml As String) As WhereExpression
Parameters:
- xml:
ParseExpression (JsonBaseObject): 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
class method ParseExpression(node: XmlNode): WhereExpression
static WhereExpression ParseExpression(XmlNode node)
Shared Function ParseExpression(node As XmlNode) As WhereExpression
Parameters:
- node:
Validate (WhereExpression): Boolean
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
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
constructor
WhereExpression()
Sub New()
ApplyFieldMapping
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:
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
Establishes a list of all ConstantExpression contained in the WhereExpression.
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 WhereExpression.
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 WhereExpression.
method ExtractAllParams(parameters: SchemaParameterCollection)
void ExtractAllParams(SchemaParameterCollection parameters)
Sub ExtractAllParams(parameters As SchemaParameterCollection)
Parameters:
- parameters:
ReadFromJson
method ReadFromJson(node: JsonObject)
void ReadFromJson(JsonObject node)
Sub ReadFromJson(node As JsonObject)
Parameters:
- node:
ReadFromXml
Abstract method. In descendants creates WhereExpression 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:
ToJsonString
method ToJsonString: String
String ToJsonString()
Function ToJsonString() As String
ToSQLString
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)
Creates an SQL representation of thу 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
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
Abstract method. In descendants creates where node (in the Dynamic Where XML Format) from WhereExpression.
method WriteToXml(node: XmlNode)
void WriteToXml(XmlNode node)
Sub WriteToXml(node As XmlNode)
Parameters:
- node: