コード例 #1
0
        public async Task <IActionResult> Index(int page)
        {
            Func <ExampleData, int> getFirstBit = n => int.Parse(n.PantoneValue.Split('-')[0]);

            var exampleData = await ExampleHelper.FetchExample(10, page);

            var group1 = exampleData.Data.Where(n => getFirstBit(n) % 3 == 0)
                         .OrderBy(n => n.Year).ToList();

            var group2 = exampleData.Data.Where(n =>
                                                getFirstBit(n) % 3 != 0
                                                &&
                                                getFirstBit(n) % 2 == 0
                                                )
                         .OrderBy(n => n.Year).ToList();

            var group3 = exampleData.Data.Where(n =>
                                                getFirstBit(n) % 3 != 0
                                                &&
                                                getFirstBit(n) % 2 != 0
                                                )
                         .OrderBy(n => n.Year).ToList();

            (List <ExampleData> Group1, List <ExampleData> Group2, List <ExampleData> Group3, PagingModel paging)result =
                (
                    group1,
                    group2,
                    group3,
                    new PagingModel()
            {
                Current = page, PageCount = exampleData.TotalPages
            }
                );

            return(View(result));
        }