示例#1
0
        public async Task <IActionResult> ImageProcessingTime()
        {
            var recentProcessedImages = await _imagesRepository.GetRecentProcessedImageDates();

            if (recentProcessedImages.Count == 0)
            {
                return(Ok(new TimeSpan(50000000)));                                  //50m ticks = 5 seconds
            }
            var dateTimeDeltas = new List <TimeSpan>();

            foreach (var img in recentProcessedImages)
            {
                dateTimeDeltas.Add((img.ProcessedDate - img.UploadedDate).Value);
            }

            var averageTicks = Convert.ToInt64(dateTimeDeltas.Average(timespan => timespan.Ticks));

            return(Ok(new TimeSpan(averageTicks)));
        }