예제 #1
0
 public UpdatePostCommand(Data.Models.Post post)
 {
     Id          = post.Id;
     Title       = post.Title;
     Description = post.Description;
     Content     = post.Content;
     Tags        = post.Tags;
 }
예제 #2
0
 public static PostEditViewModel FromModel(Data.Models.Post model) => new PostEditViewModel
 {
     Slug        = model.Slug,
     Title       = model.Title,
     Content     = model.Content,
     Author      = model.Author,
     UpdatedDate = model.UpdatedDate.ToString("yyyy-MM-dd"),
 };
예제 #3
0
 public static PostIndexViewModel FromModel(Data.Models.Post model) => new PostIndexViewModel
 {
     Slug    = model.Slug,
     Title   = model.Title,
     Content = model.Content?.Length > 50 ?
               (model.Content.Substring(0, 50) + "...")
         : model.Content,
     Author      = model.Author,
     UpdatedDate = model.UpdatedDate.ToString("yyyy-MM-dd"),
 };
예제 #4
0
 public static PostDetailViewModel FromModel(Data.Models.Post model) => new PostDetailViewModel
 {
     Slug        = model.Slug,
     Title       = model.Title,
     Content     = model.Content,
     Author      = model.Author,
     UpdatedDate = model.UpdatedDate.ToString("yyyy-MM-dd"),
     Comments    = (model.Comments ?? Enumerable.Empty <Data.Models.Comment>())
                   .OrderByDescending(c => c.Date)
                   .Select(c => PostDetailCommentViewModel.FromModel(c)),
 };
 /// <summary>
 /// Get a post struct
 /// </summary>
 /// <param name="post"></param>
 /// <returns></returns>
 private static XElement Post(Data.Models.Post post)
 {
     return(new XElement(NodeStruct,
                         Member("postid", NodeInteger, post.Id.ToString()),
                         Member("title", NodeString, post.Title),
                         Member("description", NodeString, post.GetFullContentForOpenLiveWriter()),
                         Member("link", NodeString, post.Url),
                         Member("userid", NodeString, UserId),
                         Member("date_created_gmt", "dateTime.iso8601", post.DateCreatedGmt.ToString("yyyyMMdd'T'HH':'mm':'ss", DateTimeFormatInfo.InvariantInfo)),
                         Member("permaLink", NodeString, post.Url),
                         Member("categories", post.Categories.Select(c => c.Category.Name).ToArray()),
                         Member("post_status", NodeString, post.Published ? StatusPublished : StatusDraft)
                         ));
 }
        /// <summary>
        /// Get a post from an xml element
        /// </summary>
        /// <param name="obj"></param>
        /// <returns></returns>
        private static Data.Models.Post GetPost(XElement obj, String published)
        {
            // Create a new post to return
            var post = new Data.Models.Post
            {
                Published      = published == "1",
                Title          = GetMemberValue(obj, "title"),
                DateCreatedGmt = GetPostDate(obj)
            };

            // Set content
            post.SetContentFromHtml(GetMemberValue(obj, "description"));

            return(post);
        }
예제 #7
0
        public PostDALToPostBLProfile()
        {
            var p = new Data.Models.Post();

            this.CreateMap <Data.Models.Post, Post>();
        }