public static async Task WeatherForecase(HttpContext context) { var city = (string)context.GetRouteData().Values["city"]; city = Cities[city]; var days = int.Parse(context.GetRouteData().Values["days"].ToString() ?? string.Empty); var report = new WeatherReport(city, days); await RendWeatherAsync(context, report); }
public static async Task RendWeatherAsync(HttpContext context, WeatherReport report) { context.Response.ContentType = "text/html;charset=utf-8"; await context.Response.WriteAsync("<html><head><title>天气</title></head><body>"); await context.Response.WriteAsync($"<h3>{report.City}</h3>"); foreach (var(key, value) in report.WeatherInfos) { await context.Response.WriteAsync($"{key:yyyy-MM-dd}:"); await context.Response.WriteAsync( $"{value.Condition}({value.LowTemperature}℃ ~ {value.HighTemperature}℃)<br/><br/> "); } await context.Response.WriteAsync("</body></html>"); }