// GET: Cements/Create public ActionResult Create() { CementViewModels cement = new CementViewModels(); return(View(cement)); }
public ActionResult Create(CementViewModels cement, HttpPostedFileBase Upload) { Transaction Trans = new Transaction(); cement.Cements.DateCreation = DateTime.Now; if (ModelState.IsValid) { if (Upload.ContentLength > 0) { var FileName = Upload.FileName; var PathLocation = Path.Combine(Server.MapPath("~/Content/Images/"), FileName); Upload.SaveAs(PathLocation); var Loc = "/Content/Images/" + FileName; cement.Cements.ImageLocation = Loc; } db.Cements.Add(cement.Cements); db.SaveChanges(); // Update Cement.transaction ID Trans.CementID = cement.Cements.CementID; db.Transactions.Add(Trans); cement.Cements.TransactionID = Trans.TransactionID; db.Cements.Attach(cement.Cements); var entry4 = db.Entry(cement.Cements); entry4.Property(e => e.TransactionID).IsModified = true; db.SaveChanges(); if (cement.Deliveries.QuantityToDeliver != 0) { cement.Deliveries.CementID = cement.Cements.CementID; cement.Deliveries.DateofCreation = DateTime.Now; db.Deliveries.Add(cement.Deliveries); db.SaveChanges(); Trans.DeliveryID = cement.Deliveries.DeliveryID; db.Transactions.Attach(Trans); var entry3 = db.Entry(Trans); entry3.Property(e => e.DeliveryID).IsModified = true; cement.Cements.TransactionID = Trans.TransactionID; db.Cements.Attach(cement.Cements); var entry = db.Entry(cement.Cements); entry.Property(e => e.TransactionID).IsModified = true; cement.Deliveries.TransactionID = Trans.TransactionID; db.Deliveries.Attach(cement.Deliveries); var entry2 = db.Entry(cement.Deliveries); entry2.Property(e => e.TransactionID).IsModified = true; // other changed properties db.SaveChanges(); } db.SaveChanges(); if (cement.Deliveries.DeliveryID != 0) { return(RedirectToAction("Create", "Payments", new { DeliveryID = cement.Deliveries.DeliveryID, TransactionID = Trans.TransactionID })); } } return(Redirect("Index")); }