コード例 #1
0
        public async Task <IActionResult> GetByCategory([FromRoute] string category, int page = 1, int pageSize = 5)
        {
            Tuple <int, List <Article> > articles = await _articlesService.GetArticlesByCategory(category, pageSize, page);

            return(StatusCodeAndDtoWrapper.BuildSuccess(ArticleListDtoResponse.Build(articles.Item2,
                                                                                     "/by_category/{category}", page, pageSize, articles.Item1)));
        }
コード例 #2
0
        public async Task <IActionResult> Index(
            [FromQuery] int page = 1, [FromQuery] int pageSize = 5)
        {
            var articles = await _articlesService.GetArticles(pageSize, pageSize);

            var basePath = Request.Path;

            return(StatusCodeAndDtoWrapper.BuildSuccess(ArticleListDtoResponse.Build(articles.Item2, basePath,
                                                                                     currentPage: page, pageSize: pageSize, totalItemCount: articles.Item1)));
        }
コード例 #3
0
        public async Task <IActionResult> GetByAuthor(string name, int page = 1, int pageSize = 5)
        {
            Tuple <int, List <Article> > articles = await _articlesService.GetByAuthorName(name, page, pageSize);

            if (articles == null)
            {
                return(StatusCodeAndDtoWrapper.BuildGenericNotFound());
            }

            return(new StatusCodeAndDtoWrapper(ArticleListDtoResponse.Build(articles.Item2, "by_author/", page,
                                                                            pageSize, articles.Item1)));
        }
コード例 #4
0
//        [ActionName(nameof(GetBySearchTerm))]
        public async Task <IActionResult> GetBySearchTerm(string term, int page = 1, int pageSize = 5)
        {
            Tuple <int, List <Article> > result;

            if (!string.IsNullOrEmpty(term))
            {
                result = await _articlesService.GetBySearch(term, page, pageSize);
            }
            else
            {
                result = await _articlesService.GetArticles(page, pageSize);
            }

            return(StatusCodeAndDtoWrapper.BuildSuccess(ArticleListDtoResponse.Build(result.Item2, "search/", page,
                                                                                     pageSize, result.Item1)));
        }