public async Task <IActionResult> Create(Portfolio model) { try { if (ModelState.IsValid) { var stockData = await StockApi.GetStockData(model.Symbol); var portfolio = new Portfolio { ID = model.ID, AppUser = await _userManager.GetUserAsync(User), Symbol = model.Symbol, CompanyName = stockData.CompanyName, PurchaseDateTime = model.PurchaseDateTime, AmountOfShares = model.AmountOfShares, PricePerShare = model.PricePerShare, TotalPurchasePrice = model.PricePerShare * model.AmountOfShares }; _context.Add(portfolio); await _context.SaveChangesAsync(); //return RedirectToAction(nameof(Index)); return(RedirectToAction("Index", "Portfolios")); } } catch (NullReferenceException) { ModelState.AddModelError("", "Unable to locate company for that symbol. Please check spelling and try again."); } catch (DataException dex) { Console.WriteLine(dex); ModelState.AddModelError("", "Unable to save your changes. Please try again."); } catch (Exception) { ModelState.AddModelError("", "Error, Please try again."); } return(View()); }