Ejemplo n.º 1
0
        public bool compareValue(
            object lvalue,
            object rvalue,
            ItemFilter.PropertyFilter.Mode comparison)
        {
            switch (comparison)
            {
            case PropertyFilter.Mode.EQUAL:
                if (!lvalue.ToString().Equals(rvalue.ToString(), StringComparison.CurrentCultureIgnoreCase))
                {
                    return(false);
                }
                break;

            case PropertyFilter.Mode.CONTAINS:
                if (!(lvalue.ToString().IndexOf(rvalue.ToString(), StringComparison.CurrentCultureIgnoreCase) >= 0))
                {
                    return(false);
                }
                break;

            case PropertyFilter.Mode.NOT:
                if (lvalue.ToString().Equals(rvalue.ToString(), StringComparison.CurrentCultureIgnoreCase))
                {
                    return(false);
                }
                break;

            case PropertyFilter.Mode.GREATER:
                float v1;
                if (this.numberValue(lvalue, out v1) && (double)v1 <= (double)(float)rvalue)
                {
                    return(false);
                }
                break;

            case PropertyFilter.Mode.LESS:
                float v2;
                if (this.numberValue(lvalue, out v2) && (double)v2 >= (double)(float)rvalue)
                {
                    return(false);
                }
                break;

            case PropertyFilter.Mode.GEQUAL:
                float v3;
                if (this.numberValue(lvalue, out v3) && (double)v3 < (double)(float)rvalue)
                {
                    return(false);
                }
                break;

            case PropertyFilter.Mode.LEQUAL:
                float v4;
                if (this.numberValue(lvalue, out v4) && (double)v4 > (double)(float)rvalue)
                {
                    return(false);
                }
                break;
            }
            return(true);
        }
Ejemplo n.º 2
0
        private bool compareValue(object lvalue, object rvalue, ItemFilter.PropertyFilter.Mode comparison)
        {
            float single;

            switch (comparison)
            {
            case ItemFilter.PropertyFilter.Mode.EQUAL:
            {
                if (lvalue.ToString().ToLower().Equals(rvalue.ToString().ToLower()))
                {
                    break;
                }
                return(false);
            }

            case ItemFilter.PropertyFilter.Mode.CONTAINS:
            {
                if (lvalue.ToString().ToLower().Contains(rvalue.ToString().ToLower()))
                {
                    break;
                }
                return(false);
            }

            case ItemFilter.PropertyFilter.Mode.NOT:
            {
                if (!lvalue.ToString().ToLower().Equals(rvalue.ToString().ToLower()))
                {
                    break;
                }
                return(false);
            }

            case ItemFilter.PropertyFilter.Mode.GREATER:
            {
                if (!this.numberValue(lvalue, out single) || single > (float)rvalue)
                {
                    break;
                }
                return(false);
            }

            case ItemFilter.PropertyFilter.Mode.LESS:
            {
                if (!this.numberValue(lvalue, out single) || single < (float)rvalue)
                {
                    break;
                }
                return(false);
            }

            case ItemFilter.PropertyFilter.Mode.GEQUAL:
            {
                if (!this.numberValue(lvalue, out single) || single >= (float)rvalue)
                {
                    break;
                }
                return(false);
            }

            case ItemFilter.PropertyFilter.Mode.LEQUAL:
            {
                if (!this.numberValue(lvalue, out single) || single <= (float)rvalue)
                {
                    break;
                }
                return(false);
            }
            }
            return(true);
        }