示例#1
0
        public ActionResult agregar(int id = 0)
        {
            Alma_Noticia o = new Alma_Noticia();

            if (id != 0)
            {
                o = _db.Alma_Noticia.Find(id);
            }
            else
            {
                o.Fecha     = DateTime.Now;
                o.IdUsuario = Convert.ToInt32(Session["ID_Usuario"]);
            }
            return(View(o));
        }
示例#2
0
        public ActionResult agregar(Alma_Noticia obj, IEnumerable <HttpPostedFileBase> files)
        {
            ViewBag.error = "";
            try
            {
                if (obj.Titulo == "")
                {
                    throw new ArgumentException("Debes ingresar un titulo a la noticia");
                }
                if (obj.IdPost == 0 && files.Count() == 0)
                {
                    throw new ArgumentException("Debes ingresar al menos una photo!");
                }
                if (ModelState.IsValid)
                {
                    if (obj.IdPost == 0) //solo insertamos si es nuevo
                    {
                        _db.Alma_Noticia.Add(obj);
                    }
                    else
                    {
                        _db.Entry(obj).State = System.Data.Entity.EntityState.Modified;
                    }
                    _db.SaveChanges();

                    var idpost = obj.IdPost;
                    if (files.Where(x => x != null).Count() > 0)
                    {
                        foreach (var item in files)
                        {
                            byte[] data;
                            using (Stream inputStream = item.InputStream)
                            {
                                MemoryStream memoryStream = inputStream as MemoryStream;
                                if (memoryStream == null)
                                {
                                    memoryStream = new MemoryStream();
                                    inputStream.CopyTo(memoryStream);
                                }
                                data = memoryStream.ToArray();
                            }
                            Alma_Imagen i = new Alma_Imagen();
                            i.IdPost       = idpost;
                            i.ContentType  = item.ContentType;
                            i.NombreImagen = item.FileName;
                            i.Contenido    = CreateThumbnail(data, 400);
                            _db.Alma_Imagen.Add(i);
                            _db.SaveChanges();
                        }
                    }

                    return(RedirectToAction("Index", "Home"));
                }
                else
                {
                    ViewBag.error = "Modelo inválido";
                    return(View(obj));
                }
            }
            catch (Exception ex)
            {
                ViewBag.error = ex.Message;
                return(View(obj));
            }
        }