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); }
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); }