コード例 #1
0
 public ActionResult Edit(Product p)
 {
     ViewBag.CategoryId = new SelectList(_cat.GetAll(), "CategoryId", "CategoryName", p.CategoryId);
     ViewBag.SupplierId = new SelectList(_sup.GetAll(), "SupplierId", "SupplierName", p.SupplierId);
     ViewBag.proNote    = _note.GetBy(x => x.Type == 2).AsEnumerable();
     ViewBag.AttrType   = _attr.GetAll().AsQueryable().Include(x => x.Attributes).AsEnumerable();
     if (p.ProductAttrs != null)
     {
         _prAttr.RemoveRange(_prAttr.GetBy(x => x.ProductId == p.ProductId));
         p.ProductAttrs.ToList().ForEach(x => x.ProductId = p.ProductId);
         _prAttr.AddRange(p.ProductAttrs);
     }
     if (p.ProductNotes != null)
     {
         _proNote.RemoveRange(_proNote.GetBy(x => x.ProductId == p.ProductId));
         p.ProductNotes.ToList().ForEach(x => x.ProductId = p.ProductId);
         _proNote.AddRange(p.ProductNotes);
     }
     if (ModelState.IsValid)
     {
         if (_product.Edit(p))
         {
             return(RedirectToAction("Index"));
         }
         return(View(p));
     }
     return(View(p));
 }