Exemplo n.º 1
0
        public IActionResult GetActivities()
        {
            IEnumerable <IATIActivity> iatiActivities = new List <IATIActivity>();

            iatiActivities = iatiService.GetAll();
            int counter = 1;

            foreach (var activity in iatiActivities)
            {
                activity.Id = counter;
                ++counter;
            }
            return(Ok(iatiActivities));
        }
Exemplo n.º 2
0
        public async Task <IActionResult> GetActivities()
        {
            var cachedActivities = await cache.GetAsync("iati-activities");

            ICollection <IATIActivity> iatiActivities = new List <IATIActivity>();

            if (cachedActivities == null)
            {
                iatiActivities = iatiService.GetAll();
                var    options           = new DistributedCacheEntryOptions().SetSlidingExpiration(TimeSpan.FromSeconds(cacheIntervalInSeconds));
                string activitiesStr     = JsonConvert.SerializeObject(iatiActivities);
                byte[] encodedActivities = Encoding.UTF8.GetBytes(activitiesStr);
                await cache.SetAsync("iati-activities", encodedActivities, options);
            }
            else
            {
                byte[] encodedActivities = await cache.GetAsync("iati-activities");

                string activitiesStr = Encoding.UTF8.GetString(encodedActivities);
                iatiActivities = (List <IATIActivity>)JsonConvert.DeserializeObject(activitiesStr);
            }
            return(Ok(iatiActivities));
        }