private void PopulateEntries(PageViewModel pageViewModel) { var entryToEntryViewModelMapper = new EntryToEntryViewModelMapper( this.session, this.urlHelper); var query = this.session.Query<Entry>() .Where(e => e.PageId == pageViewModel.Id && e.Published && !e.Deleted) .OrderByDescending(e => e.PublishedAtUtc); var entries = query.ToList(); pageViewModel.Entries = entries .Select(entryToEntryViewModelMapper.Map); }
public ActionResult ViewEntry(string pageSlug, string entrySlug) { var pageFactory = new PageFactory(this.session); var page = pageFactory.CreateFromSlug(pageSlug); if (page == null) { return new HttpNotFoundResult("No such page."); } var entryFactory = new EntryFactory(this.session); var entry = entryFactory.CreateFromSlug(entrySlug); if (entry == null) { return new HttpNotFoundResult("No such entry."); } var entryToEntryViewModelMapper = new EntryToEntryViewModelMapper(this.session, this.Url); var entryViewModel = entryToEntryViewModelMapper.Map(entry); entryViewModel.PageSlug = pageSlug; return this.View(entryViewModel); }
private static EntryViewModel GetMappedEntryViewModel(IDocumentSession session, Entry entry) { var testableUrlHelperFactory = new TestableUrlHelperFactory(); var urlHelper = testableUrlHelperFactory.Create(); var entryToEntryViewModelMapper = new EntryToEntryViewModelMapper(session, urlHelper); return entryToEntryViewModelMapper.Map(entry); }