Ejemplo n.º 1
0
        public async Task <IActionResult> TagList([FromServices] TagService tagService, string normalizedName, int page = 1)
        {
            var tagResponse = tagService.Get(normalizedName);

            if (tagResponse is null)
            {
                return(NotFound());
            }

            var pagesize = _blogConfig.ContentSettings.PostListPageSize;
            var posts    = await _postService.GetByTagAsync(tagResponse.Id, pagesize, page);

            var count = _cache.GetOrCreate(CacheDivision.PostCountTag, tagResponse.Id.ToString(), _ => _postService.CountByTag(tagResponse.Id));

            ViewBag.TitlePrefix = tagResponse.DisplayName;

            var list = new StaticPagedList <PostListEntry>(posts, page, pagesize, count);

            return(View(list));
        }