Exemplo n.º 1
0
 public Response <Post> GetPost(Guid id)
 {
     try
     {
         var spec = new GetPostSpec(id);
         var post = _postRepository.GetFirstOrDefault(spec);
         return(new SuccessResponse <Post>(post));
     }
     catch (Exception e)
     {
         Logger.LogError(e, $"Error {nameof(GetPost)}(id: {id})");
         return(new FailedResponse <Post>((int)ResponseFailureCode.GeneralException));
     }
 }
Exemplo n.º 2
0
        public Response <Post> GetPost(int year, int month, int day, string slug)
        {
            try
            {
                var date = new DateTime(year, month, day);
                var spec = new GetPostSpec(date, slug);
                var post = _postRepository.GetFirstOrDefault(spec);

                return(new SuccessResponse <Post>(post));
            }
            catch (Exception ex)
            {
                Logger.LogError(ex, $"Error {nameof(GetPost)}(year: {year}, month: {month}, day: {day}, slug: {slug})");
                return(new FailedResponse <Post>((int)ResponseFailureCode.GeneralException, ex.Message, ex));
            }
        }
Exemplo n.º 3
0
        public Task <IReadOnlyList <Post> > GetPagedPostsAsync(int pageSize, int pageIndex, Guid?categoryId = null)
        {
            if (pageSize < 1)
            {
                throw new ArgumentOutOfRangeException(nameof(pageSize),
                                                      $"{nameof(pageSize)} can not be less than 1, current value: {pageSize}.");
            }
            if (pageIndex < 1)
            {
                throw new ArgumentOutOfRangeException(nameof(pageIndex),
                                                      $"{nameof(pageIndex)} can not be less than 1, current value: {pageIndex}.");
            }

            var spec = new GetPostSpec(pageSize, pageIndex, categoryId);

            return(_postRepository.GetAsync(spec));
        }