public BlogPost Create(BlogPost blogPost) { blogPost = _db.BlogPosts.Add(blogPost); var tags = new List<PostTag>(); if (blogPost.Tags != null) { tags.AddRange(blogPost.Tags.Select(tag => (GetTagById(tag.Id)))); } blogPost.Tags = tags; _db.SaveChanges(); return Update(blogPost); }
public void Delete(BlogPost blogPost) { _db.BlogPosts.Remove(blogPost); _db.SaveChanges(); }
public List<PostImage> GetImagesForPost(BlogPost blogPost) { var previousPostDate = GetPreviousPublicPost(blogPost.Id).DateTime; return _db.Images.Where(x => x.DateTime > previousPostDate && x.DateTime < blogPost.DateTime).ToList(); //_db.Images.Where(x => DbFunctions.TruncateTime(x.DateTime) == date.Date).OrderByDescending(x=>x.DateTime).ToList(); }
public BlogPost Update(BlogPost blogPost) { var post = _db.BlogPosts.First(x => x.Id == blogPost.Id); post.DateTime = blogPost.DateTime; post.Title = blogPost.Title; post.Post = blogPost.Post; post.IsJornal = blogPost.IsJornal; List<PostTag> tags = new List<PostTag>(); foreach (var tag in blogPost.Tags) { if (!post.Tags.Contains(tag)) { post.Tags.Add(GetTagById(tag.Id)); } } _db.SaveChanges(); return blogPost; }
private BlogPost GetAndResizeImages(BlogPost viewmodel) { if (viewmodel.Images.Count < 1) { viewmodel.Images = _blogPostDao.GetImagesForPost(viewmodel); } foreach (var postImage in viewmodel.Images) { var outStream = ReizeImage(postImage); } return viewmodel; }