public async Task <ActionResult <TodoItem> > Get(string id) { var cachedValue = await cache.TryGet(id); if (cachedValue != null) { return(cachedValue); } else { var value = await repository.FindById(id); if (value != null) { await cache.Set(value); return(value); } else { return(NotFound()); } } }