public ActionResult DeleteConfirmed(int id) { BlogPost.Models.BlogPost blogPost = db.Posts.Find(id); db.Posts.Remove(blogPost); db.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult Create([Bind(Include = "Id,Title,Body,MediaURL,Published")] BlogPost.Models.BlogPost blogPost, HttpPostedFileBase image) { if (ModelState.IsValid) { var Slug = StringUtilites.URLFriendly(blogPost.Title); if (String.IsNullOrWhiteSpace(Slug)) { ModelState.AddModelError("Title", "Invalid title"); return(View(blogPost)); } if (ImageUploadValidator.IsWebFriendlyImage(image)) { var fileName = Path.GetFileName(image.FileName); image.SaveAs(Path.Combine(Server.MapPath("~/Uploads/"), fileName)); blogPost.MediaUrl = "/Uploads/" + fileName; } if (db.Posts.Any(p => p.Slug == Slug)) { ModelState.AddModelError("Title", "The title must be unique"); return(View(blogPost)); } blogPost.Slug = Slug; blogPost.Created = DateTimeOffset.Now; db.Posts.Add(blogPost); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(blogPost)); }
// GET: BlogPosts/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } BlogPost.Models.BlogPost blogPost = db.Posts.Find(id); if (blogPost == null) { return(HttpNotFound()); } return(View(blogPost)); }
// GET: BlogPosts/Details/5 public ActionResult DetailsSlug(string slug) { if (slug == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } BlogPost.Models.BlogPost blogPost = db.Posts .Include(p => p.Comments.Select(t => t.Author)) .Where(p => p.Slug == slug) .FirstOrDefault(); if (blogPost == null) { return(HttpNotFound()); } return(View("Details", blogPost)); }
public ActionResult Edit([Bind(Include = "Id,Title,Body,MediaURL,Published")] BlogPost.Models.BlogPost blogPost, HttpPostedFileBase image) { if (ModelState.IsValid) { db.Entry(blogPost).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } if (ImageUploadValidator.IsWebFriendlyImage(image)) { var fileName = Path.GetFileName(image.FileName); image.SaveAs(Path.Combine(Server.MapPath("~/Uploads/"), fileName)); blogPost.MediaUrl = "/Uploads/" + fileName; } return(View(blogPost)); }