public async Task <AllBookOutput> GetAllByTagIdAsync(AllBookInput <int> input) { var tag = await _tagCache.GetAsync(input.Id); if (tag == null) { throw new UserFriendlyException(404, L("PageNotFoundTitle"), L("PageNotFoundDetails")); } var builder = new BookByTag(input.Id); var books = await GetAll(input, builder); var header = L("BookByTagHeader", tag.Name); return(new AllBookOutput(books, header)); }