Пример #1
0
        public async Task <ApiPagedListOutput <TagsModel> > GetListAsync([FromQuery] TagsApiListQueryModel model)
        {
            var limit = model.Limit;
            var skip  = model.Skip;

            if (!model.AllowPage)
            {
                limit = int.MaxValue;
                skip  = 0;
            }
            var list = await _tagsService.GetTagsPagedListAsync(new TagsListInputModel()
            {
                Limit      = limit,
                Skip       = skip,
                SearchTerm = model.SearchTerm,
            });

            return(new ApiPagedListOutput <TagsModel>(list.Count, list.Select(t => _tagsFactory.ToModel(t, new TagsModel())).ToList()));
        }
Пример #2
0
        public async Task <IActionResult> GetListByTags([FromRoute] string tags, [FromQuery] int page = 1)
        {
            var t = await _tagsService.GetByNameAsync(tags);

            if (t == null)
            {
                return(NotFound());
            }

            var tagsModel = _tagsFactory.ToModel(t, new Models.TagsModel());

            return(await GetPostsAsync(new GetPostListRequestModel()
            {
                Page = page,
                Tags = tagsModel,
            }));
        }