/// <summary>
        /// Converts the given binary operator to
        /// an SQL operator formatted as a string.
        /// </summary>
        /// <param name="value">Value to convert.</param>
        /// <returns>String SQL operator matching the value.</returns>
        public static string ToSqlOperator(this BinaryOperatorEnum value)
        {
            switch (value)
            {
            case BinaryOperatorEnum.Addition:
                return("+");

            case BinaryOperatorEnum.Subtraction:
                return("-");

            case BinaryOperatorEnum.Multiplication:
                return("*");

            case BinaryOperatorEnum.Division:
                return("/");

            default:
                throw new ArgumentException(
                          string.Format("Unknown operator: {0}.", value));
            }
        }
 public MultiFieldComparisonFilterClause(BinaryOperatorEnum operation,
                                         params string[] fieldNames)
     : base(fieldNames)
 {
     Operation = operation;
 }
示例#3
0
		private static string BinaryOperatorToString(BinaryOperatorEnum binaryop, string leftValue, string rightValue)
		{
			string pattern = String.Empty;

			switch(binaryop)
			{
				case BinaryOperatorEnum.And : pattern =  " {0} and {1}"; break;
				case BinaryOperatorEnum.Div : pattern = " {0} div {1}"; break;
				case BinaryOperatorEnum.Equal : pattern = " {0} = {1} "; break;
				case BinaryOperatorEnum.Greater : pattern = " {0} > {1} "; break;
				case BinaryOperatorEnum.GreaterOrEqual : pattern = " {0} >= {1} "; break;
				case BinaryOperatorEnum.Lesser : pattern = " {0} < {1} "; break;
				case BinaryOperatorEnum.LesserOrEqual : pattern = " {0} <= {1} "; break;
				case BinaryOperatorEnum.Minus : pattern = " {0} - {1} "; break;
				case BinaryOperatorEnum.Modulo : pattern = " {0} mod {1} "; break;
				case BinaryOperatorEnum.NotEqual : pattern = " {0} != {1} "; break;
				case BinaryOperatorEnum.Or : pattern = " {0} or {1} "; break;
				case BinaryOperatorEnum.Plus : pattern = " {0} + {1} "; break;
				case BinaryOperatorEnum.Times : pattern = " {0} * {1} "; break;
				case BinaryOperatorEnum.Contains : pattern = " contains({0}, {1}) "; break;
				case BinaryOperatorEnum.BeginsWith : pattern = " starts-with({0}, {1}) "; break;
				case BinaryOperatorEnum.EndsWith : pattern = " ends-with({0}, {1}) "; break;
			}

			return String.Format(pattern, leftValue, rightValue);
		}
示例#4
0
        private static BinaryLogicOperator BinaryOperatorToBinaryLogicOperator(BinaryOperatorEnum binaryop)
        {
            switch (binaryop)
            {
                case BinaryOperatorEnum.And: return BinaryLogicOperator.And;
                case BinaryOperatorEnum.Div: return BinaryLogicOperator.Div;
                case BinaryOperatorEnum.Equal: return BinaryLogicOperator.Equals;
                case BinaryOperatorEnum.Greater: return BinaryLogicOperator.Greater;
                case BinaryOperatorEnum.GreaterOrEqual: return BinaryLogicOperator.GreaterOrEquals;
                case BinaryOperatorEnum.Lesser: return BinaryLogicOperator.Lesser;
                case BinaryOperatorEnum.LesserOrEqual: return BinaryLogicOperator.LesserOrEquals;
                case BinaryOperatorEnum.Minus: return BinaryLogicOperator.Minus;
                case BinaryOperatorEnum.Modulo: return BinaryLogicOperator.Modulo;
                case BinaryOperatorEnum.NotEqual: return BinaryLogicOperator.NotEquals;
                case BinaryOperatorEnum.Or: return BinaryLogicOperator.Or;
                case BinaryOperatorEnum.Plus: return BinaryLogicOperator.Plus;
                case BinaryOperatorEnum.Times: return BinaryLogicOperator.Times;
            }

            throw new PersistenceEngineException("Operator not managed: " + binaryop.ToString());
        }