public ActionResult CreatePage(WikiPage page) { MongoCollection<WikiPage> pages = new MongoServer().GetDatabase("MongoWiki").GetCollection<WikiPage>("WikiPage"); pages.Insert(page); return this.RedirectToAction("ViewPage", new { page = page.URL }); }
public ActionResult EditPage(WikiPage page) { MongoCollection<WikiPage> pages = new MongoServer().GetDatabase("MongoWiki").GetCollection<WikiPage>("WikiPage"); // Get the previous version WikiPage prevPage = pages.FindOne(new { URL = page.URL }); // Save the updateone pages.UpdateOne(new { URL = page.URL }, page); // Save the previous revision MongoCollection<WikiPageRevision> revs = new MongoServer().GetDatabase("MongoWiki").GetCollection<WikiPageRevision>("WikiPageRevision"); WikiPageRevision rev = new WikiPageRevision(prevPage); rev.RevisionDate = DateTime.Now; revs.Insert(rev); return this.RedirectToAction("ViewPage", new { page = page.URL }); }
public object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext) { DateTime createDate; WikiPage page = new WikiPage(); page.ID = controllerContext.HttpContext.Request.Form["ID"]; page.Title = controllerContext.HttpContext.Request.Form["Title"]; page.URL = Utility.FormatForUrl(page.Title); page.Body = controllerContext.HttpContext.Request.Form["Body"]; page.LastUpdateDate = DateTime.Now; if (DateTime.TryParse(controllerContext.HttpContext.Request.Form["CreateDate"], out createDate)) page.CreateDate = createDate; else page.CreateDate = DateTime.Now; return page; }
public WikiPageRevision(WikiPage page) : base(page.ID, page.Title, page.URL, page.Body, page.CreateDate) { }