public ActionResult Create([Bind(Include = "id,descripcion,codigo,imagen,precio,moneda")] ArticuloViewModel model)
        {
            //TODO: mostrar upload asincronico e imagen miniatura
            if (ModelState.IsValid)
            {
                var articulo = new Articulo();
                articulo.codigo = model.codigo;
                articulo.descripcion = model.descripcion;
                articulo.imagen = model.imagen;
                articulo.activo = true;
                articulo = db.Articulo.Add(articulo);

                var articuloPrecio = new ArticuloPrecio();
                articuloPrecio.idArticulo = articulo.id;
                articuloPrecio.moneda = model.moneda;
                articuloPrecio.timestamp = DateTime.Now;
                articuloPrecio.precio = model.precio;
                db.ArticuloPrecio.Add(articuloPrecio);

                db.SaveChanges();

                return RedirectToAction("Index");
            }

            return View(model);
        }
        public ActionResult Edit([Bind(Include = "id,descripcion,codigo,imagen,precio,moneda")] ArticuloViewModel model)
        {
            if (ModelState.IsValid)
            {
                Articulo articulo = db.Articulo.Find(model.id);
                articulo.codigo = model.codigo;
                articulo.descripcion = model.descripcion;
                articulo.imagen = model.imagen;
                db.Entry(articulo).State = EntityState.Modified;

                var precios = db.ArticuloPrecio.Where<ArticuloPrecio>(a => a.idArticulo == articulo.id).ToList();
                var precio = precios.OrderByDescending(p => p.timestamp).First();
                if (precio.precio != model.precio || precio.moneda != model.moneda)
                {
                    var articuloPrecio = new ArticuloPrecio();
                    articuloPrecio.idArticulo = articulo.id;
                    articuloPrecio.moneda = model.moneda;
                    articuloPrecio.timestamp = DateTime.Now;
                    articuloPrecio.precio = model.precio;
                    db.ArticuloPrecio.Add(articuloPrecio);
                }

                db.SaveChanges();
                return RedirectToAction("Index");
            }
            return View(model);
        }