コード例 #1
0
        public static ControlThinkTemperature?ToControlThinkType(this ITemperature input)
        {
            if (input == null)
            {
                return(null);
            }

            decimal value;
            ControlThinkTemperatureScale scale;

            if (input is FahrenheitTemperature)
            {
                value = (int)Math.Round(input.Value);
                scale = ControlThinkTemperatureScale.Fahrenheit;
            }
            else
            {
                value = (int)(Math.Round(input.Celsius.Value));
                scale = ControlThinkTemperatureScale.Celsius;
            }

            var result = new ControlThinkTemperature(value, scale);

            return(result);
        }
コード例 #2
0
        public static ITemperature ToRoomieType(this ControlThinkTemperature input)
        {
            ITemperature result;

            var value = Convert.ToDouble(input.Value);

            switch (input.Scale)
            {
            case ControlThinkTemperatureScale.Celsius:
                result = new CelsiusTemperature(value);
                break;

            case ControlThinkTemperatureScale.Fahrenheit:
                result = new FahrenheitTemperature(value);
                break;

            default:
                result = null;
                break;
            }

            return(result);
        }