Beispiel #1
0
        public static async Task WeatherForecast(HttpContext context)
        {
            var city = (string)context.GetRouteData().Values["city"];

            city = _cities[city];
            int days   = int.Parse(context.GetRouteData().Values["days"].ToString());
            var report = new WeatherReport(city, days);

            await RendWeatherAsync(context, report);
        }
Beispiel #2
0
        public static async Task WeatherForecast(HttpContext context)
        {
            var values = context.GetRouteData().Values;
            var city   = values["city"].ToString();

            city = _cities[city];
            var date   = DateTime.ParseExact(values["date"].ToString(), "yyyy/MM/dd", CultureInfo.InvariantCulture);
            var report = new WeatherReport(city, date);

            await RendWeatherAsync(context, report);
        }
Beispiel #3
0
        public static async Task WeatherForecast(HttpContext context)
        {
            var values = context.GetRouteData().Values;
            var city   = values["city"].ToString();

            city = _cities[city];
            int year   = int.Parse(values["year"].ToString());
            int month  = int.Parse(values["month"].ToString());
            int day    = int.Parse(values["day"].ToString());
            var report = new WeatherReport(city, new DateTime(year, month, day));

            await RendWeatherAsync(context, report);
        }
Beispiel #4
0
        private static async Task RendWeatherAsync(HttpContext context, WeatherReport report)
        {
            context.Response.ContentType = "text/html;charset=utf-8";
            await context.Response.WriteAsync("<html><head><title>Weather</title></head><body>");

            await context.Response.WriteAsync($"<h3>{report.City}</h3>");

            foreach (var it in report.WeatherInfos)
            {
                await context.Response.WriteAsync($"{it.Key.ToString("yyyy-MM-dd")}:");

                await context.Response.WriteAsync($"{it.Value.Condition}({ it.Value.LowTemperature}℃ ~ { it.Value.HighTemperature}℃)<br/><br/> ");
            }
            await context.Response.WriteAsync("</body></html>");
        }
Beispiel #5
0
        public static async Task WeatherForecast(HttpContext context)
        {
            var routeValues = context.GetRouteData().Values;
            var city        = routeValues.TryGetValue("city", out var v1)
             ? (string)v1
             : "010";

            city = _cities[city];
            var days = routeValues.TryGetValue("days", out var v2)
                ? int.Parse(v2.ToString())
                : 4;

            var report = new WeatherReport(city, days);

            await RendWeatherAsync(context, report);
        }