public async Task <ActionResult <IEnumerable <ApplicationViewModel> > > GetApplications() { var user = await _userManager.FindByNameAsync(User.Identity.Name); if (user == null) { return(Unauthorized()); } List <ExpertApplication> expertApplications = await _context.ExpertApplications.ToListAsync(); if (expertApplications.Count == 0) { return(NoContent()); } List <ApplicationViewModel> applicationViewModels = new List <ApplicationViewModel>(); foreach (var application in expertApplications) { if (application.Status == ApplicationStatus.Pending) { applicationViewModels.Add(Mapper.ApplicationToViewModel(application, await _context.Subjects.Where(x => x.ID == application.SubjectId).FirstOrDefaultAsync(), await _userManager.FindByIdAsync(application.UserId))); } ; } return(applicationViewModels); }