public PostIndexViewModel Handle(PostIndexRequest message) { var result = new PostIndexViewModel(); result.Active = ActivePosts.ToList(); result.FuturePostCount = FuturePosts.Count; return(result); }
public PostGetViewModel Handle(PostRequest message, PostGetViewModel result) { var post = ActivePosts.FirstOrDefault(); if (message.Slug != null) { post = AllPosts.FirstOrDefault(x => x.Slug.ToLower() == message.Slug.ToLower()); } if (post == null) { return(result); //Decision: don't throw, handle downstream as to what this means } var previous = ActivePosts.OrderBy(x => x.PublishedAtCst).FirstOrDefault(x => x.PublishedAtCst > post.PublishedAtCst); var next = ActivePosts.FirstOrDefault(x => x.PublishedAtCst < post.PublishedAtCst); result.Post = post; result.Previous = previous; result.Next = next; return(result); }