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