コード例 #1
0
        public ViewBlogPostModelContainer ReadPostForViewByVisitor(string publicationName, int postId)
        {
            var content = BlogBiz.ReadPostForViewByVisitor(publicationName, postId);

            VisitBiz.IncrementContentVisits(content.Id);
            UnitOfWork.SaveChanges();
            return(new ViewBlogPostModelContainer()
            {
                BlogInfo = BlogBiz.Read(b => b.Id == content.PublicationId).MapTo <BlogInfoPM>().Single(),
                Post = content.GetContentInfoWithTextPM(),
                Tags = content.Tags.Select(tag => tag.GetPresentationModel()).ToList(),
                ArchiveItems = PublicationBiz.ReadPublicationArchivedItemsCalendar(content.PublicationId.Value, ContentType.BlogPost)
                               .Select(item => new ContentArchiveItemPM(item.Item1, item.Item2)),
                Links = BlogBiz.ReadBlogLinks(content.PublicationId.Value)
                        .MapTo <BlogLinkPM>()
                        .ToList(),
                Comments = content.Comments
                           .Where(comment => !comment.IsPrivate)
                           .Select(comment => comment.GetCommentInfoPM()).ToList(),
                LatestPosts = BlogBiz.ReadUserPublishedPostsForViewByVisitor(content.Publication.CreatorId)
                              .Take(10)
                              .MapTo <ContentInfoWithTextPM>()
                              .ToList()
            });
        }
コード例 #2
0
 private BlogHomePageModelContainer ReadBlogHomePageData(Blog blog)
 {
     return(new BlogHomePageModelContainer()
     {
         BlogInfo = blog.GetBlogInfo(),
         ArchiveItems = PublicationBiz.ReadPublicationArchivedItemsCalendar(blog.Id, ContentType.BlogPost)
                        .Select(item => new ContentArchiveItemPM(item.Item1, item.Item2)),
         Links = BlogBiz.ReadBlogLinks(blog.Id)
                 .MapTo <BlogLinkPM>()
                 .ToList(),
         LatestPosts = BlogBiz.ReadUserPublishedPostsForViewByVisitor(blog.CreatorId)
                       .Take(100)
                       .MapTo <ContentInfoWithTextPM>()
                       .ToList()
     });
 }