public async Task <ActionResult <PrimaryItemResource> > Get(long id) { var cacheKey = $"{nameof(PrimaryItemResource)}_{id}"; var resource = await _cache.GetAsync <PrimaryItemResource>(cacheKey); if (resource == null) { var item = await _service.GetById(id); if (item == null) { return(NotFound()); } resource = _mapper.Map <PrimaryItem, PrimaryItemResource>(item); await _cache.AddAsync(cacheKey, resource); } return(Ok(resource)); }