private ProductManiViewModel GetProductManiViewModelObject(int id = 0) { List <Category> categories; List <Supplier> suppliers; if (HttpContext.Cache["listCategories"] == null) { using (NorthwindEntities db = new NorthwindEntities()) { categories = db.Categories.ToList(); } HttpContext.Cache.Add("listCategories", categories, null, Cache.NoAbsoluteExpiration, TimeSpan.FromMinutes(20), CacheItemPriority.Low, null); } else { categories = HttpContext.Cache["listCategories"] as List <Category>; } if (HttpContext.Cache["listSuppliers"] == null) { using (NorthwindEntities db = new NorthwindEntities()) { suppliers = db.Suppliers.ToList(); } HttpContext.Cache.Add("listSuppliers", suppliers, null, Cache.NoAbsoluteExpiration, TimeSpan.FromMinutes(20), CacheItemPriority.Low, null); } else { suppliers = HttpContext.Cache["listSuppliers"] as List <Supplier>; } ProductManiViewModel model = new ProductManiViewModel(); model.Categories = categories; model.Suppliers = suppliers; if (id == 0) { model.Product = new Product(); model.ButtonName = "Add Product"; } else { List <Product> products = HttpContext.Cache["listProducts"] as List <Product>; model.Product = products.FirstOrDefault(x => x.ProductID == id); model.ButtonName = "Update Product"; } return(model); }
public ActionResult UpdateMyProduct(Product product) { if (!ModelState.IsValid) { ProductManiViewModel model = GetProductManiViewModelObject(product.ProductID); return(View(model)); } using (NorthwindEntities db = new NorthwindEntities()) { db.Entry(product).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); } TempData["message"] = "Veri guncellendi"; HttpContext.Cache.Remove("listProducts"); return(RedirectToAction("ListMyProducts")); }
public ActionResult AddMyProduct() { ProductManiViewModel model = GetProductManiViewModelObject(); return(View(model)); }
public ActionResult UpdateMyProduct(int id) { ProductManiViewModel model = GetProductManiViewModelObject(id); return(View(model)); }