Beispiel #1
0
        public ActionResult Editar(BlogVista model, HttpPostedFileBase fichero)
        {
            if (model != null && ModelState.IsValid)
            {
                //Buscamos el blog a modificar...
                var blog = DbContext.Blog.Find(model.IdBlog);

                blog.titulo      = model.Titulo;
                blog.texto       = model.Texto;
                blog.profesional = false;
                blog.fecha       = model.Fecha;

                if (fichero != null && fichero.ContentLength > 0)
                {
                    //guardamos la nueva imagen con la misma ruta que tenía antes, solo cambia el nombre
                    var nombre    = string.Format("Blog{0}", model.IdBlog);
                    var extension = fichero.FileName.Substring(fichero.FileName.LastIndexOf(".", comparisonType: StringComparison.Ordinal));
                    var ruta      = Server.MapPath("~/Uploads/Fotos") + "/" + nombre + extension;
                    fichero.SaveAs(ruta);
                    blog.foto = "~/uploads/fotos/" + nombre + extension;
                }

                DbContext.SaveChanges();
            }

            return(RedirectToAction("Index", "Blog"));
        }
Beispiel #2
0
        public ActionResult Anadir(BlogVista model, HttpPostedFileBase fichero)
        {
            if (model != null && ModelState.IsValid)
            {
                if (fichero != null && fichero.ContentLength > 0)
                {
                    var cus = (CustomIdentity)System.Web.HttpContext.Current.User.Identity;
                    var usu = DbContext.Usuario.FirstOrDefault(oo => oo.login == cus.Email);

                    var blog = new Blog();

                    if (usu != null)
                    {
                        blog.idUsuario = usu.idUsuario;
                    }

                    blog.titulo      = model.Titulo;
                    blog.fecha       = model.Fecha;
                    blog.texto       = model.Texto;
                    blog.foto        = "";
                    blog.profesional = false;
                    DbContext.Blog.Add(blog);
                    DbContext.SaveChanges();

                    try
                    {
                        var nombre    = "Blog" + blog.idBlog;
                        var extension = fichero.FileName.Substring(fichero.FileName.LastIndexOf(".", StringComparison.Ordinal));
                        var ruta      = Server.MapPath("~/Uploads/Fotos") + "/" + nombre + extension;
                        fichero.SaveAs(ruta);
                        blog.foto = "~/uploads/fotos/" + nombre + extension;

                        DbContext.SaveChanges();

                        PublicarEnRedesSociales(blog, nombre, extension);
                    }
                    catch (Exception e)
                    {
                        //si falla el anadir la foto, borramos el elemento de la base de datos y devolvemos la vista con un error
                        DbContext.Blog.Remove(blog);
                        DbContext.SaveChanges();

                        ModelState.AddModelError("", Utilidades.ErrorManager.ErrorCodeToString(Utilidades.ErrorCodes.ErrorAddingItem) + " " + e.Message);
                        return(View(model));
                    }
                }
            }

            return(RedirectToAction("Index", "Blog"));
        }
Beispiel #3
0
        public ActionResult Anadir()
        {
            var blog = new BlogVista();

            return(View(blog));
        }