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))); }
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))); }
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))); }
// [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))); }