コード例 #1
0
        private async Task GetForecastAsync()
        {
            Loading = true;

            var forecasts = await ForecastService.GetForecastAsync();

            Forecasts = forecasts.Select(f => new DynamicTableRow <WeatherForecast> {
                Context = f
            }).ToList();

            GroupedForecast = forecasts.GroupBy(f => f.Date.Date).Select(g =>
            {
                var group = new DynamicTableGroup <WeatherForecast>
                {
                    Rows = g.Select(f => new DynamicTableRow <WeatherForecast> {
                        Context = f
                    }).ToList()
                };

                return(group);
            }).ToList();

            Loading = false;
        }
コード例 #2
0
        private async Task GetForecastAsync()
        {
            Loading = true;

            var forecasts = await ForecastService.GetForecastAsync();

            Forecasts = forecasts.Select(f =>
            {
                var props = new List <DynamicTableCell>
                {
                    new DynamicTableCell {
                        Content = f.Date, Classes = "-l"
                    },
                    new DynamicTableCell {
                        Content = f.Temperature, Classes = "-l"
                    },
                    new DynamicTableCell {
                        Content = f.RainChangePercent, Classes = "-r"
                    },
                    new DynamicTableCell {
                        Content = f.RainAmmount, Classes = "-r"
                    }
                };

                return(new DynamicTableRow {
                    Cells = props
                });
            }).ToList();

            GroupedForecast = forecasts.GroupBy(f => f.Date.Date).Select(g =>
            {
                var group = new DynamicTableGroup
                {
                    Title = $"{g.Key.ToShortDateString()} -> Avg temp (C): {Math.Round(g.Average(f => f.Temperature), 1, MidpointRounding.ToEven)}",
                    Rows  = g.Select(f =>
                    {
                        var props = new List <DynamicTableCell>
                        {
                            new DynamicTableCell {
                                Content = f.Date, Classes = "forecast-date -l"
                            },
                            new DynamicTableCell {
                                Content = f.Temperature, Classes = "-l"
                            },
                            new DynamicTableCell {
                                Content = f.RainChangePercent, Classes = "-r"
                            },
                            new DynamicTableCell {
                                Content = f.RainAmmount, Classes = "-r"
                            }
                        };

                        return(new DynamicTableRow {
                            Cells = props
                        });
                    }).ToList()
                };

                return(group);
            }).ToList();

            Loading = false;
        }