示例#1
0
 public List<Producto> Retrieve(Producto criteria, bool tracking)
 {
     DbQuery<Producto> qryArchivo = (tracking) ? model.Productos : model.Productos.AsNoTracking();
     return qryArchivo
         .Where(new ProductoQry(criteria).Action()).Include(x => x.Categoria)
         .ToList();
 }
示例#2
0
 public ActionResult Create(Producto producto)
 {
     try
     {
         ctrl.Insert(producto);
         return RedirectToAction("Index");
     }
     catch
     {
         return View();
     }
 }
示例#3
0
 public ActionResult Edit(int id, Producto producto)
 {
     try
     {
         var p = ctrl.Retrieve(new Producto() { ProductoId = id }, true);
         this.TryUpdateModel(p);
         ctrl.Update();
         return RedirectToAction("Index");
     }
     catch
     {
         return View();
     }
 }
示例#4
0
        public ActionResult Galeria(int? id, Producto producto)
        {
            Producto p = new Producto();
            try
            {
                if (id == null)
                    throw new Exception("Es necesario el identificador del producto");
                p = ctrl.Retrieve(new Producto() { ProductoId = id }, true).FirstOrDefault();
                if (p == null) throw new Exception("El producto no existe");
            }
            catch
            {
            }

            if (Request.Files.Count != 0)
            {
                for (int x = 0; x < Request.Files.Count; x++)
                {
                    HttpPostedFileBase file = Request.Files[x];
                    if (string.IsNullOrEmpty(file.FileName)) continue;
                    FileInfo fileInfo = new FileInfo(file.FileName);
                    Galeria galeria = new Galeria();

                    galeria.Descripcion = file.FileName;
                    galeria.Clave = Guid.NewGuid().ToString();
                    galeria.FileName = string.Format("{0}{1}", galeria.Clave , fileInfo.Extension);
                    galeria.Principal = p.Galerias.Count == 0 && x == 0;
                    galeria.ProductoId = p.ProductoId;

                    file.SaveAs(Server.MapPath(string.Format("~/Images/Galerias/{0}",  galeria.FileName)));
                    TiendaAdmin.Comun.Utils.ImageUtils.ThumbnailImage(Server.MapPath(string.Format("~/Images/Galerias/{0}", galeria.FileName)));
                    p.Galerias.Add(galeria);
                }
                ctrl.Update();
                return RedirectToAction("Galeria", new { id = p.ProductoId });
            }

            return View(p);
        }
示例#5
0
 public void Insert(Producto producto)
 {
     model.Productos.Add(producto);
     model.Commit(sign);
 }