/// <summary> /// Get detailed model of all projects /// </summary> /// <returns></returns> public async Task <ActionResult> Index() { var projects = await _projectsClient.GetAllAsync(); var data = new List <EcommerceProjectModel>(); using (var db = ApplicationDbContext.Create()) { foreach (var project in projects.Items) { var currentProject = await _projectsClient.GetAsync(project.Id); var currentProduct = currentProject.Products.First(); var ecommerceProject = await db.Projects.FirstOrDefaultAsync(x => x.ProjectId == project.Id && x.UserId == currentProduct.UserId); if (ecommerceProject != null) { var product = TestProducts.Products[ecommerceProject.ProductId]; data.Add(new EcommerceProjectModel() { Project = currentProject, EcommerceProduct = product }); } } } return(View(data)); }