public async Task <IViewComponentResult> InvokeAsync() { var helpList = _context.HelpRequest.Where(x => x.Status == Status.Requested).Include(x => x.StudentAndDemoUsers).ThenInclude(x => x.User); var newList = new List <HelpRequestListViewModel>(); foreach (var helpReq in helpList) { var listModel = new HelpRequestListViewModel { DescOfProblem = helpReq.HelpDesc, Id = helpReq.Id, TimeRequested = helpReq.DateCreated.ToString(CultureInfo.InvariantCulture) }; var firstOrDefault = helpReq.StudentAndDemoUsers.FirstOrDefault(); if (firstOrDefault == null) { continue; } var user = firstOrDefault.User; listModel.Location = user.Location; listModel.StudentNumber = user.StudentNumber; newList.Add(listModel); } return(View(newList.AsQueryable())); }
public IActionResult Index() { var user = _userManager.GetUserAsync(User).Result; var helpRequests = _context.HelpRequest.Where(x => x.Status == Status.InProgress).Include(x => x.StudentAndDemoUsers).ThenInclude(x => x.User); var test = helpRequests.FirstOrDefault(x => x.StudentAndDemoUsers.FirstOrDefault(a => a.User == user) != null); var firstOrDefault = test?.StudentAndDemoUsers.FirstOrDefault(x => x.User != user); if (firstOrDefault == null) { return(View((HelpRequestListViewModel)null)); } var otherUser = firstOrDefault.User; var helpRequestViewModel = new HelpRequestListViewModel { DescOfProblem = test.HelpDesc, Id = test.Id, Location = otherUser.Location, StudentNumber = otherUser.StudentNumber, TimeRequested = test.DateCreated.ToString(CultureInfo.InvariantCulture) }; return(View(helpRequestViewModel)); }