public ActionResult EditCustomer(Customer account) { using (ShoppingCartDBEntities1Entities db = new ShoppingCartDBEntities1Entities()) { try { if (!ModelState.IsValid) { ViewBag.Message = "Error editing account:"; return(View("EditCustomer", account)); } Customer theAccount = db.Customers.First(p => p.ID == account.ID); theAccount.FirstName = account.FirstName; theAccount.LastName = account.LastName; theAccount.StreetAddress = account.StreetAddress; theAccount.City = account.City; theAccount.State = account.State; theAccount.Zip = account.Zip; theAccount.Phone = account.Phone; theAccount.Email = account.Email; db.SaveChanges(); return(RedirectToAction("Customers")); } catch (Exception ex) { ViewBag.Message = "Error editing account: " + GetError(ex); return(View("EditCustomer", account)); } } }
public ActionResult ShoppingCartAccount(Customer accountToCreate) { try { if (!ModelState.IsValid) { ViewBag.Message = "Please correct the following error(s):"; return(View()); } string ItemList = ""; decimal SubTotalPrice = 0.0M; for (int i = 0; i < tabViews.Length; ++i) { if (Session[tabViews[i] + "ItemAmount"] != null) { int amount = Int32.Parse(Session[tabViews[i] + "ItemAmount"].ToString()); ItemList += GetSessionItemString2(tabViews[i], tabHeadings[i], amount, ref SubTotalPrice, ItemList); } } ItemList += String.Format("%%%%%%<h3>SubTotal: {0:C}", SubTotalPrice); ItemList += String.Format("%%%Tax: {0:C}", decimal.Round(SubTotalPrice * taxRate, 2)); ItemList += String.Format("%%%Total Purchase Price: {0:C}</h3>", SubTotalPrice + decimal.Round(SubTotalPrice * taxRate, 2)); Session["Name"] = String.Format("{0} {1}", accountToCreate.FirstName, accountToCreate.LastName); Session["Email"] = accountToCreate.Email; Session["ItemList"] = ItemList; using (ShoppingCartDBEntities1Entities db = new ShoppingCartDBEntities1Entities()) { db.Customers.Add(accountToCreate); db.SaveChanges(); } for (int i = 0; i < tabViews.Length; ++i) { if (Session[tabViews[i] + "ItemAmount"] != null) { int amount = Int32.Parse(Session[tabViews[i] + "ItemAmount"].ToString()); for (int j = 1; j <= amount; ++j) { Session[tabViews[i] + "Amount" + j] = "0"; Session[tabViews[i] + "Price" + j] = 0.0; Session[tabViews[i] + "Option_" + j] = ""; Session[tabViews[i] + "Option2_" + j] = ""; } } } return(RedirectToAction("ConfirmPurchase")); } catch (Exception ex) { ViewBag.Message = "Error processing data: " + GetError(ex); return(View()); } }
public ActionResult Customers(string sortOrder) { using (ShoppingCartDBEntities1Entities db = new ShoppingCartDBEntities1Entities()) { ViewBag.Message = "Customer Accounts:"; ViewBag.LastNameSortParm = String.IsNullOrEmpty(sortOrder) ? "LastName desc" : ""; ViewBag.FirstNameSortParm = (sortOrder == "FirstName" ? "FirstName desc" : "FirstName"); ViewBag.IDSortParm = (sortOrder == "ID" ? "ID desc" : "ID"); ViewBag.AmountSortParm = (sortOrder == "Amount" ? "Amount desc" : "Amount"); var accounts = from a in db.Customers select a; switch (sortOrder) { case "FirstName": accounts = accounts.OrderBy(s => s.FirstName); break; case "FirstName desc": accounts = accounts.OrderByDescending(s => s.FirstName); break; case "ID": accounts = accounts.OrderBy(s => s.ID); break; case "ID desc": accounts = accounts.OrderByDescending(s => s.ID); break; case "Amount": accounts = accounts.OrderBy(s => s.ID); break; case "Amount desc": accounts = accounts.OrderByDescending(s => s.ID); break; case "LastName desc": accounts = accounts.OrderByDescending(s => s.LastName); break; default: accounts = accounts.OrderBy(s => s.LastName); break; } return(View(accounts.ToList())); } }
public ActionResult EditCustomer(int ID) { using (ShoppingCartDBEntities1Entities db = new ShoppingCartDBEntities1Entities()) { ViewBag.Message = "Edit Customer Account:"; try { Customer theAccount = db.Customers.First(p => p.ID == ID); return(View(theAccount)); } catch { return(RedirectToAction("Error")); } } }