示例#1
0
        public async Task <IActionResult> Index(string catFilter, string returnUrl)
        {
            var viewModel = new ViewModels.GamesListViewModel();
            var games     = await _gameService.GetGamesAsync(GetAuthToken(), returnUrl);

            var result = games.OrderBy(game => game.Category)
                         .ThenBy(game => game.Platform)
                         .ThenBy(game => game.Name).ToList();


            var uniqueCategories = result.Select(g => g.Category)
                                   .Distinct();

            var categoriesSelectsList = new List <SelectListItem>();
            var i = 1;

            uniqueCategories.ToList().ForEach(cat =>
            {
                var newItem = new SelectListItem
                {
                    Text  = cat,
                    Value = i.ToString()
                };
                categoriesSelectsList.Add(newItem);
            });

            ViewBag.CategoryList = categoriesSelectsList;

            viewModel.Games = result;
            return(View(viewModel));
        }
示例#2
0
        public async Task <IActionResult> Index(string catFilter, string returnUrl)
        {
            var viewModel = new ViewModels.GamesListViewModel();
            var games     = await _gameService.GetGamesAsync(GetAuthToken(), returnUrl);

            viewModel.Games = games;

            return(View(viewModel));
        }
示例#3
0
        public async Task <IActionResult> Index(string catFilter, string returnUrl)
        {
            var viewModel = new ViewModels.GamesListViewModel();
            var games     = await _gameService.GetGamesAsync(GetAuthToken(), returnUrl);

            viewModel.Games      = games;
            viewModel.Categories = games.Select(g => g.Category).DistinctBy(c => c);

            return(View(viewModel));
        }
示例#4
0
        public async Task <IActionResult> Index(string catFilter, string returnUrl)
        {
            var viewModel = new ViewModels.GamesListViewModel();
            var games     = await _gameService.GetGamesAsync(GetAuthToken(), returnUrl);

            viewModel.Games = games.OrderByDescending(c => c.Category).ThenBy(p => p.Platform).ThenBy(n => n.Name);



            return(View(viewModel));
        }
        public async Task <IActionResult> Index(string catFilter, string returnUrl)
        {
            var viewModel = new ViewModels.GamesListViewModel();
            var games     = await _gameService.GetGamesAsync(GetAuthToken(), returnUrl);

            if (string.IsNullOrEmpty(catFilter))
            {
                viewModel.Games = games.OrderBy(a => a.Category).ThenBy(a => a.Platform).ThenBy(a => a.Name);
            }
            else
            {
                viewModel.Games = games.Where(a => a.Category == catFilter).OrderBy(a => a.Category).ThenBy(a => a.Platform).ThenBy(a => a.Name);
            }

            // Task 4 - create a List of Categories for the dropdown to display
            viewModel.Categories = games.OrderBy(a => a.Category).Select(a => a.Category).Distinct();

            return(View(viewModel));
        }
示例#6
0
        public async Task <IActionResult> Index(string catFilter, string returnUrl)
        {
            var viewModel = new ViewModels.GamesListViewModel();
            var games     = await _gameService.GetGamesAsync(GetAuthToken(), returnUrl);

            var cats = games.Select(c => c.Category).Distinct();

            viewModel.Categories = cats;

            if (catFilter != null)
            {
                viewModel.Games = games.Where(x => x.Category == catFilter);
            }
            else
            {
                viewModel.Games = games;
            }

            return(View(viewModel));
        }
示例#7
0
        public async Task <IActionResult> Index(string catFilter, string returnUrl)
        {
            var viewModel = new ViewModels.GamesListViewModel();
            var games     = await _gameService.GetGamesAsync(GetAuthToken(), returnUrl);

            if (catFilter != null)
            {
                games.Where(w => w.Category == catFilter).ToList();
            }

            viewModel.Games = games
                              .OrderByDescending(o => o.Category)
                              .ThenBy(o => o.Platform)
                              .ThenBy(o => o.Name);

            var categories = viewModel.Games.Select(s => s.Category).Distinct().ToList();

            ViewBag.Categories = new SelectList(categories);

            return(View(viewModel));
        }