public CategoryResponseDto GetCategoryById(int Id) { var category = GetById(Id); var listOfPost = new List <PostResponseDto>(); var listOfImages = new List <ImageResponseDto>(); var listOfComments = new List <CommentResponseDto>(); foreach (var post in category.Posts) { foreach (var comment in post.Comments) { var commentDto = new CommentResponseDto { Id = comment.Id, ContentOfComment = comment.Content, postId = comment.postId }; listOfComments.Add(commentDto); } foreach (var image in post.Images) { var imageDto = new ImageResponseDto { Id = image.Id, Name = image.Name, Url = image.Url, Extension = image.Extension, postId = image.postId }; listOfImages.Add(imageDto); } var postDto = new PostResponseDto { Id = post.Id, Title = post.Title, Content = post.Content, Likes = post.Likes, Dislikes = post.Dislikes, Comments = listOfComments, Images = listOfImages, CategoryId = post.CategoryId }; listOfPost.Add(postDto); } var categoryDto = new CategoryResponseDto { Id = category.Id, Name = category.Name, Posts = listOfPost }; return(categoryDto); }
public List <PostResponseDto> GetAllPost() { var posts = _context.Posts.Include("Images").Include("Comments").ToList(); posts.Reverse(); var listOfPost = new List <PostResponseDto>(); var listOfImages = new List <ImageResponseDto>(); var listOfComments = new List <CommentResponseDto>(); foreach (var post in posts) { if (post.Comments.Count != 0) { foreach (var comment in post.Comments) { var commentDto = new CommentResponseDto { Id = comment.Id, ContentOfComment = comment.Content, postId = comment.postId }; listOfComments.Add(commentDto); } } if (post.Images.Count != 0) { foreach (var image in post.Images) { var imageDto = new ImageResponseDto { Id = image.Id, Name = image.Name, Url = image.Url, Extension = image.Extension, postId = image.postId }; listOfImages.Add(imageDto); } } var postDto = new PostResponseDto { Id = post.Id, Title = post.Title, Content = post.Content, Likes = post.Likes, Dislikes = post.Dislikes, //Comments = listOfComments, Images = listOfImages, CategoryId = post.CategoryId }; listOfPost.Add(postDto); } return(listOfPost); }
public PostResponseDto GetPostById(int Id) { var post = _context.Posts.Include("Images").Where(p => p.Id == Id).FirstOrDefault(); var listOfImages = new List <ImageResponseDto>(); var listOfComments = new List <CommentResponseDto>(); //foreach (var comment in post.Comments) //{ // var commentDto = new CommentResponseDto // { // Id = comment.Id, // ContentOfComment = comment.Content, // postId = comment.postId // }; // listOfComments.Add(commentDto); //} if (post.Images.Count != 0) { foreach (var image in post.Images) { var imageDto = new ImageResponseDto { Id = image.Id, Name = image.Name, Url = image.Url, Extension = image.Extension, postId = image.postId }; listOfImages.Add(imageDto); } } var postDto = new PostResponseDto { Id = post.Id, Title = post.Title, Content = post.Content, Likes = post.Likes, Dislikes = post.Dislikes, Comments = listOfComments, Images = listOfImages, CategoryId = post.CategoryId }; return(postDto); }
public ActionResult <Post> GetPost(long id, [FromQuery] bool shortPost = false) { Post post = blogRepository.GetById(id); if (post != null) { if (shortPost) { ShortPostResponseDto result = (ShortPostResponseDto)post; result.ImageUri = service.GetImage(GetHostPath(), post.ImageGuid); return(Ok(result)); } else { PostResponseDto result = (PostResponseDto)post; result.ImageUri = service.GetImage(GetHostPath(), post.ImageGuid); return(Ok(result)); } } return(NotFound(id)); }