예제 #1
0
        /// <summary>
        /// Совпадает ли расчетная характеристика с поисковым значением
        /// </summary>
        /// <param name="quantity">Величина</param>
        /// <param name="name">Имя расчетной характеристики</param>
        /// <param name="matchValue">Совпавшее строковое значение из исходной поисковой строки, без учета операторов</param>
        public bool IsMatch(IQuantity quantity, string name, out string matchValue)
        {
            switch (quantity.Type)
            {
            case QuantityType.QuantityType_Area:
                return(IsMatch(quantity.AsArea(_areaUnit), name, out matchValue));

            case QuantityType.QuantityType_Count:
                return(IsMatch(quantity.AsCount(), name, out matchValue));

            case QuantityType.QuantityType_Length:
                return(IsMatch(quantity.AsLength(_lengthUnit), name, out matchValue));

            case QuantityType.QuantityType_Mass:
                return(IsMatch(quantity.AsMass(_massUnit), name, out matchValue));

            case QuantityType.QuantityType_Volume:
                return(IsMatch(quantity.AsVolume(_volumeUnit), name, out matchValue));

            default:
                matchValue = string.Empty;
                return(false);
            }
        }