public async Task <List <Events> > GetEventsRequestItemsAsync() { List <Events> eventRequestEntities = new List <Events>(); eventRequestEntities = await eventRestClientEntities.GetAsync(); return(eventRequestEntities); }
public async Task <IActionResult> Index() { using (var client = _httpClientFactory.CreateAuthorizedClient()) { var apiClient = new EventsClient(client); var response = await apiClient.GetAsync(); var list = response .Result .Select(x => new EventListItemViewModel { Id = x.Id, Authors = x.Authors, Cast = x.Cast, Categories = x.Categories.ToArray(), DateTime = x.DateTime, Description = x.Description, Duration = x.Duration, Title = x.Title }); var viewModel = new EventListViewModel(list); return(View(viewModel)); } }
public async Task <IActionResult> Index() { var eventsListCache = "eventsListCache"; // Look for cache key. if (_cache.TryGetValue(eventsListCache, out EventListViewModel cachedViewModel)) { return(View(cachedViewModel)); } using (var client = _httpClientFactory.CreateAuthorizedClient()) { var baseUrl = Environment.GetEnvironmentVariable("TICKETTRADER_API_HOST"); var apiClient = new EventsClient(baseUrl, client); var response = await apiClient.GetAsync(); var list = response .Result .Select(x => new EventListItemViewModel { Id = x.Id, Authors = x.Authors, Cast = x.Cast, Categories = x.Categories.ToArray(), DateTime = x.DateTime, Description = x.Description, Duration = x.Duration, Title = x.Title }); var viewModel = new EventListViewModel(list); var cacheEntryOptions = new MemoryCacheEntryOptions() .SetSlidingExpiration(TimeSpan.FromMinutes(5)); _cache.Set(eventsListCache, viewModel, cacheEntryOptions); return(View(viewModel)); } }