public async Task <IActionResult> Index(string searchName = "")
        {
            var allPerformers = await _dbContext.Performers.ToListAsync();

            allPerformers = allPerformers.OrderBy(x => x.Name).ToList();

            if (searchName != null && searchName != "")
            {
                allPerformers = allPerformers.Where(x => x.Name.Contains(searchName)).ToList();
            }

            var model = new PerformersAllViewModel()
            {
                Performers = new List <PerformersViewModel>()
            };

            foreach (var performer in allPerformers)
            {
                int albumsNumber = _dbContext.Albums.Where(x => x.PerformerId == performer.Id).Count();
                int songsNumber  = _dbContext.Songs.Where(x => x.PerformerId == performer.Id).Count();

                var singleViewModel = new PerformersViewModel()
                {
                    Id           = performer.Id,
                    Name         = performer.Name,
                    Description  = performer.Description,
                    AlbumsNumber = albumsNumber,
                    SongsNumber  = songsNumber
                };

                model.Performers.Add(singleViewModel);
            }

            return(View(model));
        }
 public async Task <IActionResult> Index(PerformersAllViewModel model)
 {
     return(await this.Index(model.SearchWord));
 }