Beispiel #1
0
        static void Main(string[] args)
        {
            const string zipCode = "98074";

            WeatherFacade weatherFacade = new WeatherFacade();

            WeatherFacadeResults results = weatherFacade.GetTempInCity(zipCode);

            Console.WriteLine("The current temperature is {0} F / {1} C in {2}, {3}",
                              results.Fahrenheit, results.Celsius, results.City.Name, results.State.Name);
        }
        /// <inheritdoc cref="IWeatherFacade.GetTempInCity"/>
        public WeatherFacadeResults GetTempInCity(string zipCode)
        {
            // call service 1
            City  city  = _geoLookupService.GetCityForZipCode(zipCode);
            State state = _geoLookupService.GetStateForZipCode(zipCode);

            // call service 2
            int fahrenheit = _weatherService.GetTempFahrenheit(city, state);

            // call service 3
            int celsius = _converterService.ConvertFahrenheitToCelsius(fahrenheit);

            // create temperature result
            var result = new WeatherFacadeResults()
            {
                City       = city,
                State      = state,
                Fahrenheit = fahrenheit,
                Celsius    = celsius
            };

            return(result);
        }